Personalmente, construyo mi propio mecanismo para iniciar el proceso de auto actualización cuando la marca de tiempo de mi aplicación no está sincronizada con el servidor. No es muy difícil, pero no es una tarea simple.
Por cierto, para Delphi puede utilizar un poco de ayuda thirdparty:
http://www.tmssoftware.com/site/wupdate.asp
ACTUALIZADO:
Por mi aplicación:
MyApp.EXE se ejecutará en 3 modos diferentes
MyApp.EXE sin cualquier argumento Esto iniciará la aplicación típicamente.
1.1 Lo primero que hace es validar su propio tiempo de archivo con el servidor.
1.2 Si se requiere la actualización a continuación, se descargará el archivo actualizado en el archivo llamado "MiApl-AAAA-MM-DD-HH-MM-SS.EXE"
1.3 A continuación se invocan "MiApl-AAAA MM-DD-HH-MM-SS.exe "con comando argumento
MyApp-YYYY-MM-DD-HH-MM-SS.exe --update MyApp.EXE
1.4 Finalice esta aplicación.
1.5 Si no hay una actualización requiere entonces la aplicación se iniciará normalmente de 1,1
MyApp.EXE "Nombre de archivo" --update.
2.1 Intente copiarse a "NOMBRE DE ARCHIVO" cada 100ms hasta que tenga éxito.
2.2 Invoque "FILENAME" cuando sea exitoso
2.3 Invoque "FILNAME --delete MyApp-YYYY-MM-DD-HH-MM-SS.exe" para eliminarlo.
2.4 Terminar
MyApp.EXE --delete "Nombre de archivo"
3.1 Prueba a borrar el archivo "FILENAME" cada 500ms hasta el éxito.
3.2 Terminar
ya he estado usando este esquema para mi aplicación durante 7 años y funciona bien. Puede ser bastante doloroso depurar cuando las cosas van mal ya que los pasos implican muchos procesos. Sugiero que haga un montón de registro de rastreo para permitir una solución de problemas más simple.
buena suerte
Eso es exactamente lo que terminé haciendo. – Branko
No me molestará un voto a favor entonces;) – Sake