Imprimir página | Cerrar ventana

Actualización de versión

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=86959
Fecha de impresión: 26/Marzo/2026 a las 19:24


Tema: Actualización de versión
Publicado por: JoanJesus
Asunto: Actualización de versión
Fecha de publicación: 27/Junio/2024 a las 11:15
Buenos días:
Al abrir una aplicación (A) quiero que, si existe una versión nueva (N), se instale la versión nueva.
Detectar si existe una versión nueva está resuelto, pero...
Desde la aplicación "antigua"(A) quiero abrir otra aplicación (C) que se encargará de sustituir la versión antigua (A) por la "nueva" (N).
El problema es que A lanza a C pero a su vez debe cerrarse a si misma para que C pueda hacer la substitución.
Y no me sale
Igual lo que estoy haciendo es una tontería y hay formas más eficientes de hacerlo.
¿Alguna pista por favor?




Respuestas:
Publicado por: happy
Fecha de publicación: 27/Junio/2024 a las 18:21
Y cómo lo estás haciendo? Porque según lo que explicas, más o menos, la aplicación (A) debería decir algo parecido a esto:

<línea donde se abre/lanza la otra aplicación (C) que se encargará de sustituir la versión antigua por la nueva>
DoCmd.Quit ' para que se cierre la aplicación (A)


-------------
Saludos,

Juan M. Afan de Ribera


Publicado por: JoanJesus
Fecha de publicación: 27/Junio/2024 a las 20:15
Eso es lo que intenté al principio pero no funcionaba.
Lo he probado cuando se abre el formulario principal, una vez al evento al cargar y otra al abrir, y no ha funcionado.
Pero me he dado cunta que si el formulario estaba YA abierto la secuencia de "lanzar C" y docmd.Quit funcionaba bien.
Solución (Chapucera):
Abro el formulario
Al evento "Al cronometro" con timeInterval en 10, lanzo la secuencia Abrir formulario C y docmd.quit del formulario A. Luego por codigo dejo timerInterval a 0 y así funciona.
Escribiendo esto, se me ha ocurrido que si lanzo todo desde "Autoexec" igual funciona y me ahorro toda esta mandanga. Mañana lo pruebo.



Publicado por: javier.mil
Fecha de publicación: 28/Junio/2024 a las 19:48
Hola JoanJesus ,

Tal como dice HAPPY deberias usar DoCmd.Quit

Mira la DEMO 53 de mi WEB https://www.accessdemo.info" rel="nofollow - https://www.accessdemo.info  

Una vez que estés dentro del Programa en el formulario principal veras el boton de Actualizar Versión al pulsarlo se ejecutara el cambio de versión, el proceso es automático ,.. si todo va bien debería cambiarse  de
versión 1.4  >>>>  a la versión 1.5

(Solo funciona si tienes Access de 32 bits)




-------------
https://www.accessdemo.info" rel="nofollow - https://www.accessdemo.info





Publicado por: JoanJesus
Fecha de publicación: 02/Julio/2024 a las 08:08
Buenos días. 
Te agradezco la ayuda. Tengo el office de 64 bits.
De todas formas he rehecho todo el proceso y el Docmd.quit funciona ahora cerrando el programa después de lanzar la otra base de datos.
Gracias a todos por vuestro tiempo.
Podéis cerrar el hilo.
Salut



Imprimir página | Cerrar ventana