Permite actualizar la Aplicacion tanto en el equipo local como actualizar el servidor donde esta la aplicacion a distribuir.
Poner este codigo en archivo de inicio principal (prg).
Luego de Generar nuestro ejecutable, el instalador ademas de todos los archivos necesarios, tiene que instalar en cada maquina el Archivo ACTUALIZA.BAT y/o UPLOAD.BAT
El Archivo Upload.bat es identico al Actualiza solo cambia la direccion de la copia.
***** Comprueba Nueva Version ******* AGETFILEVERSION(ServerApp,"\\miservidor") Version_Mayor = VAL(SUBSTR(ServerApp(4),1,1)) Version_Menor = VAL(SUBSTR(ServerApp(4),3,AT(ServerApp(4),".",1) + 1)) Version_Mantension = VAL(SUBSTR(ServerApp(4),5,2) ) AGETFILEVERSION(MiApp,"C:\Archivos de programa\CDP\CDP.exe") MiVersion_Mayor = VAL(SUBSTR(miapp(4),1,1)) MiVersion_Menor = VAL(SUBSTR(miapp(4),3,AT(miapp(4),".",1) + 1)) MiVersion_Mantension = VAL(SUBSTR(miapp(4),5,2) ) * IF !(MiVersion_Mayor = Version_Mayor.AND.MiVersion_Menor = Version_Menor ; .AND.MiVersion_Mantension = Version_Mantension) **** Actualizar ** Si soy yo copia al servidor IF UPPER(ALLTRIM(SUBSTR(SYS(0),AT("#",SYS(0),1) + 1,LEN(SYS(0))))) = "miUsername" MESSAGEBOX("Las Versiones Son: ServerApp -> " + ServerApp(4) + CHR(13) + ; "Local App. ->" + miApp(4) + CHR(13) + "Actualizando el Servidor") RUN /N "C:\Archivos de programa\CDP\UPLOAD.BAT" ELSE SET DEFAULT TO "C:\Archivos de programa\CDP" RUN /N "ACTUALIZA.BAT" QUIT ENDIF ENDIF ***** Fin Comprobacion de Actualizacion Contenido del archivo ACTUALIZA.BAT @ECHO OFF @ECHO Actualizando Sistema xxxxxxx @ECHO AUTOR.: Ludwig Corales M. @ECHO Actualizado al : %DATE% @xCopy \\soft\CDP.EXE "C:\Archivos de programa\CDP" /C /R /Y ***** Fin Contenido ********** ***** Contenido del archivo UPLOAD.BAT ****** @ECHO OFF @ECHO Actualizando Sistema xxxxxxx @ECHO AUTOR.: Ludwig Corales M. @ECHO Actualizado al Servidor : %DATE% @xCopy "C:\Archivos de programa\CDP\CDP.exe" \\soft\ /C /R /Y ***** Fin Contenido **********
Notar que se comparan siempre tanto las versiones mayores, menores y sub versiones, para ver si se actualiza o no.
Atte.
Ludwig Corales Marti
cuando dices "\\miservidor" peude ser el servidorde la red ejemplo
ResponderBorrar"\\SVRENTERPRISE\Publica\Productrofo\" ????
En mi caso tengo mi aplicación corriendo en C:\terrenos\
ResponderBorrary su nombre es Terrenos.exe
y en el servidor local esta en \\serverterrenos\public\Terrenos\
y se llama terrenos.exe
Como debería configurar ???