
Consejo para actualizar la version de ejecutable y su .ini
#1
Escrito 25 marzo 2017 - 06:19
#2
Escrito 26 marzo 2017 - 03:37
Para tus actualizaciones puede bastar una dll. La lógica sería así: App principal es informada de que se necesita una actualización, entonces termina las tareas pendientes que usan la dll y la descarga del proceso con un FreeLibrary. Acto seguido descarga de la red la nueva versión y realiza un LoadLibrary.
Para que esto funcione la dll debe exportar una función que devuelva la versión y su uso debe ser por carga dinámica, no estática. Esto supone tener una función o procedimiento de carga de la dll y actualización de todos los punteros a las funciones exportadas por la dll. Otra solución más simple sería que el grueso del funcionamiento estuviese en la dll y que el programa principal fuese un simple descargador de nuevas versiones que una vez realizada su función cede el control al grueso del la app en la dll.
Si no te convence el asunto de la dll, puedes hacerlo con ejecutables, como propones, pero eso supone tener un ejecutable más y cerrar la app principal para que se pueda actualizar para arrancarla tras haberlo hecho, en caso contrario no podrás sobreescribir su archivo.
Saludos.
#3
Escrito 26 marzo 2017 - 10:51
Buenas noches Escafandra y gracias por la pronta respuesta, se entendio perfectamente el consejo¡
estuve investigando al respecto sobre la posibilidad de incorporar la actualizacion por dll
y lo voy a tener en cuenta para la proxima version del desarrollo, por el momento, buscarè la manera de hacerlo por reemplazo del ejecutable
desde otra aplicacion, ya que por el tema de las librerias aun escapa a mis actuales capacidades con Delphi
Gracias de nuevo y exitos por allà¡