Ver Mensaje Individual
  #4  
Antiguo 16-03-2011
Master23 Master23 is offline
Miembro
 
Registrado: feb 2010
Posts: 113
Reputación: 15
Master23 Va por buen camino
Cita:
Empezado por farute Ver Mensaje
no tiene por qué,
No se si es muy correcto hacerlo pero lo que se puede hacer es:
- renombrar el ejecutable que esta corriendo o el que quieras actualizar (no hay problema en hacerlo)
RenameFile(ExtractFileName(application.ExeName),'viejo.exe');
- descargar el nuevo exe en el mismo directorio con el mismo nombre que tiene el ejecutable que está corriendo
- cerrar la aplicacion y volver a abrirla con el nuevo ejecutable
Application.terminate;
ShellExecute(Application.Handle,'Open',pChar(Application.ExeName),PChar('No'),nil,SW_NORMAL);

y en el oncreate eliminar si existe el fichero que habiamos renombrado para que no moleste para una próxima actualización,
if FileExists('viejo.exe') then DeleteFile('viejo.exe');
O quizás prefieras guardarlo en algún lado por si falla la actualización, eso ya lo que tu veas
Muchas gracias amigo , tu respuesta fue la más sencilla y lógica de aplicar, gracias de nuevo.
Responder Con Cita