Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-11-2006
julian_ch julian_ch is offline
Miembro
 
Registrado: jun 2003
Posts: 18
Poder: 0
julian_ch Va por buen camino
Actualizar .exe

Hola!! Estoy haciendo un programa y se ejecuta en varios equipos, lo que quiero es que cuando cambie el .exe del servidor se actualicen automaticamente los .exe clientes, para esto he pensado en que junto a cada .exe haya un ficherito que ponga la version y si detecta que la version del servidor es mas nueva que la del cliente se actualice, ahora viene lo bueno, como puedo yo desde mi propio .exe copiar el otro y machacarlo?? Al estar ejecutandose me daria un error, a alguien se le ocurre alguna idea, muchas gracias!!!!!
Responder Con Cita
  #2  
Antiguo 14-11-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por julian_ch
... como puedo yo desde mi propio .exe copiar el otro y machacarlo?? ...
La respuesta corta es que no puedes. No puedes modificar un ejecutable mientras estas en ejecución, así que necesitas la ayuda de alguien. Esa ayuda puede ser un programa auxiliar, un archivo .bat, o si no te importa esperar, puedes programar el reemplazo en el siguiente reinicio del equipo. A mi no se me ocurren mas ideas ...
Responder Con Cita
  #3  
Antiguo 14-11-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No puedes "machachar" el ejecutable mientras este esté en ejecución. Lo que se suele hacer es interponer un programa (aparte) que sea el encargado de descargar una versión actualizada de tu programa, y, cuando tu programa se cierre, sea este programa intermedio el que se encarge de borrar el antiguo ejecutable y sustituirlo por el actualizado.

Evidentemente lo expongo todo muy sintéticamente. Puedes buscar información en estos Foros sobre esta tarea de actualizar programas, puesto que se ha tratado en más de una ocasión de esto y se han dado varias soluciones al respecto.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 14-11-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Eco, eeeeeeecoooo...
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 14-11-2006 a las 00:07:48.
Responder Con Cita
  #5  
Antiguo 14-11-2006
julian_ch julian_ch is offline
Miembro
 
Registrado: jun 2003
Posts: 18
Poder: 0
julian_ch Va por buen camino
Ok, gracias por responder tan pronto, voy a ponerme a buscar..........

Salu2!!!
Responder Con Cita
  #6  
Antiguo 14-11-2006
julian_ch julian_ch is offline
Miembro
 
Registrado: jun 2003
Posts: 18
Poder: 0
julian_ch Va por buen camino
Cita:
Empezado por dec
Puedes buscar información en estos Foros sobre esta tarea de actualizar programas, puesto que se ha tratado en más de una ocasión de esto y se han dado varias soluciones al respecto.
He encontrado este hilo en el foro http://www.clubdelphi.com/foros/showthread.php?t=32550 , pero no consigo hacerlo funcionar sin servidor ftp o http, no hay nada parecido a esto pero que no necesite ningun tipo de servidor, sino un equipo que haga de servidor???


Gracias!!!!
Responder Con Cita
  #7  
Antiguo 14-11-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Habría que hablarlo, pero, si un equipo hacer de servidor... ya tenemos servidor. ¿No?
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #8  
Antiguo 14-11-2006
julian_ch julian_ch is offline
Miembro
 
Registrado: jun 2003
Posts: 18
Poder: 0
julian_ch Va por buen camino
Si lo miras asi....... jeje pero es servidor de aplicaciones, no es ni web ni ftp
Responder Con Cita
  #9  
Antiguo 14-11-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Supongo que estamos hablando del programa "agent", si no recuerdo mal, que no lo hago En el código encontraras una función tal que así:

Código Delphi [-]
function Bajar(Url: string; Archivo: string): Boolean;

Esta función baja un archivo de un http o ftp y lo guarda en el disco duro, pues solo tienes que reemplazar esa función por la que necesites para obtener los archivos del "servidor de aplicaciones". No estoy seguro, pero si el programa esta colocado en una carpeta compartida se podría usar la instrucción Copyfile, corregirme si me equivoco, solo tendrías que tener en cuenta a la hora de hacer los archivos de inicio que donde antes era una url ahora seria la dirección del archivo en formato UNC
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Actualizar de Fb 1.0.2 a Fb 1.5 Sergio J. Firebird e Interbase 5 07-04-2006 12:03:59
Actualizar Tablas Ledian2006 Conexión con bases de datos 2 12-01-2006 14:43:01
actualizar interbase... celesdiaz Firebird e Interbase 2 10-06-2005 01:42:03
actualizar fabriciof Conexión con bases de datos 3 27-05-2004 14:58:56
actualizar un DBGrid Salomon Conexión con bases de datos 0 28-01-2004 11:33:52


La franja horaria es GMT +2. Ahora son las 12:20:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi