Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Actualización de Aplicación VFP de Manera Sencilla

Descargar como doc, pdf o txt
Descargar como doc, pdf o txt
Está en la página 1de 4

Actualización de aplicación VFP de

manera sencilla
Corrección del 16/02/2008: Gracias a Dave Crozier por encontrar un error en
el código (vea los comentarios más abajo). Un nuevo archivo .Zip de
AppUpdate.zip se ha subido al servidor. Si ya ha descargado el .Zip, puede
descargarlo de nuevo o hacer los cambios que se describen en los
comentarios de este artículo.

Actualizando aplicaciones Visual FoxPro

Una de las cosas que he tratado de hacer en mi artículo sobre ClickOnce, era
proporcionar a los desarrolladores Visual FoxPro, la comprensión de una de las
tantas soluciones disponibles para la actualización de las aplicaciones una vez
que ya se han distribuido. Aunque ClickOnce es muy poderoso, hay momentos
en que una solución mas de cosecha propia, puede ser más apropiada. La
actualización de aplicaciones, con aplicaciones que los desarrolladores han
escrito y/o poseen el código fuente, también pueden ofrecer un grado de
flexibilidad y poder que sólo no se encuentra disponible en soluciones como
ClickOnce, ni en el servicio de actualización de InstallShield. Así que en esta
entrada del blog, presentaré una aplicación que he creado usando Visual
FoxPro SP2 que se puede utilizar para actualizar prácticamente cualquier
aplicación Visual FoxPro.

AppUpdate.exe AppUpdate.exe

AppUpdate.exe es lo que se conoce como un 'cargador' (loader). Esto significa


básicamente que es responsable de la comprobación de las actualizaciones, la
instalación en caso de que estas existan, y luego la ejecución de la aplicación
que se actualizó. Basándose en gran medida en la utilización de las nuevas
vfpcompression.fll y vfpconnection.fll, AppUpdate.exe está diseñada para
permitir a los desarrolladores de Visual FoxPro, añadir rápida y fácilmente, la
capacidad de actualización de sus aplicaciones. Aquí hay un par de capturas
de pantalla de AppUpdate ejecutándose...
Si bien estoy incluyendo el código fuente del proyecto AppUpdate, este no es
necesario para modificar AppUpdate con el fin de configurarlo para actualizar
una aplicación particular. AppUpdate obtiene su información del archivo
appupdate.ini que proporciona una gran variedad de secciones y de entradas
que le permitirá especificar qué aplicación se supone que la carga, cuando
comprobar si hay actualizaciones, la manera de cargar la aplicación, lo que se
muestra al usuario, donde copia localmente las actualizaciones con el fin de
que la misma actualización sólo debe descargarse una vez en un entorno
multiusuario, cuando mostrar las actualizaciones, que código VFP se ejecutará
una vez que la actualización se ha instalado, etc. Así que, como desarrollador
sólo necesita modificar el archivo ini para adaptar AppUpdate, con su conjunto
de aplicaciones VFP.

En la descarga ...

En la descarga he incluido un ejemplo totalmente funcional de AppUpdate,


junto al código fuente. He incluido sampleapp.exe que es la versión 1.0 y he
puesto una actualización para este (la versión 2.0) en el servidor de
SweetPotato Software para este fin, por lo que puede realmente probar
AppUpdate y ver cómo funciona directamente del servidor. He incluido muchos
comentarios en el archivo appupdate.ini que deseara examinar y un par de
archivos ReadMe.txt. Simplemente descargue el archivo zip de abajo,
extráigalo en algún lugar, lea rápidamente el archivo ini y el archivo ReadMe.txt
incluidos, y luego ejecute AppUpdate.exe. Cuando comience a querer crear sus
propias actualizaciones, puede echar un vistazo a la carpeta ServerUpdate que
he incluido en la descarga, y contiene los archivos que están en el servidor de
SweetPotato Software que está actualizando sampleapp.exe provisto en la
descarga.

Quiero saber lo que piensas

Si prueba AppUpdate, me encantaría saber lo que piensas de él. Si tiene


alguna sugerencia para mejorar o encuentra algún error, no dudes en dejar un
comentario y yo responderé.

Comentarios

Craig,

Hay un problema en el proyecto ApplicationUpdate. En el formulario


UpdateMessage, en el método downloadupdate() hay dos líneas mal:

* Lineas antiguas
* m.lcUpdateFile = "File://" + m.lcUpdateFile
* m.llReturn = FileGet(this.updateFile,
m.lcUpdateURL,"m.goThisForm.ProgressHandler()")
* Nueva linea
This.UpdateURL = "File://" + This.UpdateURL m.llReturn = ;
FileGet(this.updateurl, m.lcUpdateFile,
"m.goThisForm.ProgressHandler()")

Saludos,

Dave Crozier

Gran captura Dave!!


He subido un archivo .Zip corregido. El código en el método downloadupdate()
fue modificado por el siguiente ...

OTHERWISE
IF UPPER(LEFT(This.UpdateURL, 7)) != "FILE://"
This.UpdateURL = "File://" + This.UpdateURL
ENDIF
m.llReturn = FileGet(This.UpdateURL, m.lcUpdateFile,
"m.goThisForm.ProgressHandler()")
ENDCASE

Craig Boyd

También podría gustarte