version del proyecto
Hola a todos,
Tengo una aplicación que voy subiendo a la red (LAN) conferme voy haciendo modificaciones. Los usuarios tiene que bajarse las nuevas versiones del ejecutable para sustituirlas por las viejas. Lo que quiero conseguir es que cuando un usuario ejecute la aplicación ésta compruebe si la versión que hay en la red es más reciente que la en ejecución. Mirando por el foro (aqui ) he conseguido obtener la versión de la aplicación. Ahora lo que necesito es saber (no se si se podrá hacer) la versión de la otra aplicación, es decir, conocer la versión de una aplicación que no está en ejecución. Gracias por vuestra ayuda |
Bueno, tendrás dos ejecutables, el local y el remoto (el que está en el servidor y que tienes que comprobar si es posterior al Local para machacar)...
El código de ese post sirve para cualquier fichero (basta cambiar el Params(0) por el filename del fichero a mirar... luego solo tienes que hacerlo de ambos (que tendrán trayectorias distintas), comparar y si encuentra uno mejor, comprelo. |
En principio sólo tendrias que cambiar esta linea del ejemplo que indicas
Código:
Size := GetFileVersionInfoSize(PChar (ParamStr (0)), Size2); Espero te sirva |
Como otra solución sencilla, te recomendaría trabajar con la fecha de creación del ejecutable, y te obviarías problemas con la actualización de la versión.
Saludos! |
Gracias por vuestras respuestas.
Lo de sustituir el ParamStr era obvio pero no me habia dado cuenta :eek:. Siguiendo con el tema de lo de las versiones. ¿Cómo se podría hacer este proceso de forma transparente al usuario? Quiero decir, cuando ejecuta la aplicación y comprueba que hay una nueva, sustuir la antigua en el equipo local del usuario y ejecutarla sin que él note nada de esto. Lo unico que se me ocurre es hacerlo mediante dos aplicaciones, la primera se limitaría a comprobar la versión, hacer la copia si es necesario y lanzar la "verdadera" aplicación. ¿Se le ocurre a alguien otra forma? Es que no me parece muy limpio dejar al usuario los 2 ejecutables. |
Cita:
|
Hace un tiempo, he propuesto en mi empresa, un programita que sería un menú con todas los aplicativos de la empresa, cuando el usuario selecciona uno de estos aplicativos comprueba su versión / fecha contra la de uno en el servidor, si son iguales ejecuta directamente el que esta en el disco del cliente, caso contrario copia previamente el EXE al disco del cliente y luego lo ejecuta normalmente.
|
La franja horaria es GMT +2. Ahora son las 12:40:50. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi