4.4 · Despliegue: instalación y actualización automática

Nivel 4 · Experto: aplicaciones profesionales y despliegue

4.4Despliegue: instalación y actualización automática

Objetivo: Generar el ejecutable, crear el programa de instalación y configurar la actualización automática, con una prueba en máquina virgen y un plan de marcha atrás.
Tiempo estimado: 12 min · lectura autónoma · Si solo tienes 5 min: lee «Lo esencial en 30s» + el esquema.

Lo esencial en 30 segundos

  • La cadena de entrega WinDev: generación del ejecutable (configuración 32/64 bits), biblioteca de los elementos, programa de instalación generado por asistente (archivos, accesos directos, requisitos previos, base, desinstalación) y actualización automática.
  • ⚠️ No olvide nada: el ejecutable solo no basta — hacen falta el framework WinDev, los accesos nativos a la base, las imágenes, informes, recursos y archivos de configuración; un despliegue incompleto se traduce en errores al arrancar en el cliente.
  • ⚠️ Regla de oro: probar la instalación en una MÁQUINA VIRGEN, distinta del puesto de desarrollo; para una actualización, guardar los datos antes, probar sobre una copia y prever una marcha atrás.

Minicaso continuo — Yacine entrega su gestión de comercio en el cliente

Yacine, desarrollador WinDev en una pyme de comercio de material eléctrico en Orán, debe entregar su aplicación de gestión en los puestos de la empresa. Primero genera el ejecutable en la configuración correcta y después crea el programa de instalación con el asistente: archivos, accesos directos, requisitos previos, creación de la base, desinstalación. Comprueba que todo está incluido — framework WinDev, accesos nativos a la base, imágenes, informes, archivos de configuración. Luego prueba la instalación en una máquina virgen, distinta de su puesto de desarrollo: ahí descubre que su puesto tenía «por accidente» un elemento que faltaba en otro sitio. También configura la actualización automática para que la aplicación detecte e instale las nuevas versiones. Para la primera actualización en producción, guarda los datos antes, prueba la conversión de estructura sobre una copia de los datos reales, planifica la intervención fuera de las horas críticas y prevé una marcha atrás. Anota el reflejo: nunca enviar un ejecutable sin haberlo instalado en una máquina virgen.

Caso autónomo de esta sección: reaparece en el curso, el esquema, el guion y el reto de 48 h de la sección 4.4.

1. La cadena de entrega

Desarrollar es una cosa, entregar es otra. WinDev proporciona una cadena completa. (1) La generación del ejecutable: se produce el programa a partir del proyecto, eligiendo la configuración (32/64 bits, opciones). (2) La biblioteca: los elementos del proyecto (ventanas, informes, consultas) pueden empaquetarse en un archivo que acompaña al ejecutable. (3) El programa de instalación: un asistente genera un instalador completo (archivos, accesos directos, requisitos previos, base de datos, desinstalación). (4) La actualización automática: un mecanismo integrado permite a la aplicación desplegada detectar e instalar una nueva versión — una comodidad considerable en cuanto hay más de unos pocos puestos.

2. No olvide nada, pruebe en máquina virgen

Los puntos de vigilancia de un despliegue correcto. (1) No olvide nada: el ejecutable solo generalmente no basta — hacen falta el framework WinDev (las bibliotecas de ejecución), los accesos nativos a la base, las imágenes y recursos, los informes, los archivos de configuración, las fuentes especiales. Un despliegue incompleto se manifiesta con errores al arrancar. (2) Pruebe en una máquina virgen, distinta del puesto de desarrollo: es la única forma de detectar lo que tiene «de más» en su máquina — es la regla de oro del despliegue. Su puesto ya lo contiene todo, la aplicación funciona necesariamente allí, lo que enmascara las carencias.

3. Gestionar los datos y las actualizaciones

Los datos requieren una atención especial. Distinga la primera instalación (crear la base) de la actualización (preservar los datos y, si procede, hacer evolucionar la estructura — operación delicada). Para toda actualización en producción: guarde antes, pruebe sobre una copia de los datos reales, planifique fuera de las horas críticas y prevea una marcha atrás. Piense también en los derechos necesarios (instalación, escritura en determinadas carpetas), en las ubicaciones estándar del sistema e informe a los usuarios de lo que cambia.

Error frecuente de interpretación: «El ejecutable solo basta para entregar una aplicación; probar en casa es lo mismo que en el cliente; y una actualización no necesita copia de seguridad». No, triple error. El ejecutable solo está incompleto: a menudo faltan el framework, los accesos nativos, los recursos y las fuentes. Probar en casa no demuestra nada, porque el puesto de desarrollo ya lo contiene todo: solo una máquina virgen revela las carencias. Y una actualización que modifica la estructura de los datos exige una copia de seguridad previa — Yacine prueba primero sobre una copia de los datos reales.
Del taller al puesto del cliente Generar, empaquetar, instalar, probar en máquina virgen y después actualizar preservando los datos. Generación y biblioteca Ejecutable+ elementosPrograma de instalación Archivos,requisitos previos, basePrueba en máquina virgen y ACT Datospreservados, marcha atrás
Generar, empaquetar, instalar, probar en máquina virgen y después actualizar preservando los datos.
Versión en texto del esquema (SEO / lectores de pantalla / traducción): 1) Yacine, desarrollador WinDev en una pyme de comercio de material eléctrico en Orán, aprende que la entrega pasa por una cadena: generación del ejecutable (configuración 32/64 bits), biblioteca de los elementos, programa de instalación generado por asistente (archivos, accesos directos, requisitos previos, base, desinstalación) y actualización automática. 2) Retiene que no hay que olvidar nada (framework, accesos nativos, imágenes, informes, archivos de configuración, fuentes) y sobre todo probar la instalación en una máquina virgen, única forma de detectar las carencias; para una actualización hay que preservar los datos, hacer evolucionar la estructura con prudencia, guardar antes y prever una marcha atrás. 3) Por tanto genera el ejecutable, crea el instalador, prueba en una máquina virgen, configura la actualización automática y prepara una actualización probada sobre una copia de los datos reales. Lección: probar en máquina virgen es la regla de oro del despliegue.

🔎 Ejemplo concreto — 🔎 Ejemplo concreto — La cadena de entrega

Las etapas de la entrega, tal como las sigue Yacine:

Chaine de livraison WinDev :
1) Generer l'executable (configuration 32/64 bits)
2) Bibliotheque : fenetres, etats, requetes empaquetes
3) Programme d'installation (assistant) : fichiers, raccourcis,
   prerequis, base, desinstallation
4) Mise a jour automatique : l'application detecte et installe
   la nouvelle version

REGLE D'OR : tester l'installation sur une MACHINE VIERGE
   -> revele le framework manquant, les acces natifs,
      les ressources, les polices, les droits

Lectura: la entrega no es «copiar el ejecutable»: es una cadena que va de la generación a la actualización automática.

Lección: la prueba en máquina virgen es lo que distingue un despliegue correcto de un fracaso ante el usuario.

Vocabulario de la sección

Generación del ejecutable
Producir el programa a partir del proyecto, eligiendo la configuración (32/64 bits, opciones) — primera etapa de la entrega.

Ejemplo sencillo: Yacine genera el ejecutable de su aplicación de comercio.

Lo que no es: enviar el proyecto fuente al cliente.

Reflejo: producir el programa → la generación.

Programa de instalación
El instalador generado por asistente: coloca los archivos, crea los accesos directos, instala los requisitos previos, prepara la base y gestiona la desinstalación.

Ejemplo sencillo: Yacine genera el instalador con el asistente de WinDev.

Lo que no es: copiar los archivos a mano en cada puesto.

Reflejo: instalar limpiamente → el programa de instalación.

Actualización automática
Mecanismo integrado que permite a la aplicación desplegada detectar e instalar una nueva versión.

Ejemplo sencillo: Yacine configura la actualización automática para los seis puestos.

Lo que no es: reinstalar manualmente cada puesto en cada versión.

Reflejo: difundir una versión → la actualización automática.

Prueba en máquina virgen (⚠️)
La regla de oro: probar la instalación en una máquina distinta del puesto de desarrollo, única forma de detectar los elementos que faltan (framework, accesos nativos, recursos).

Ejemplo sencillo: Yacine instala en una máquina limpia y descubre un acceso nativo olvidado.

Lo que no es: probar únicamente en su puesto de desarrollo.

Reflejo: revelar las carencias → la prueba en máquina virgen.

Evolución de la estructura de datos
En una actualización, los datos existentes deben preservarse y su estructura puede tener que modificarse — operación delicada, que hay que guardar y probar.

Ejemplo sencillo: Yacine convierte la estructura sobre una copia de los datos reales antes de desplegar.

Lo que no es: modificar la estructura directamente en producción sin copia de seguridad.

Reflejo: hacer evolucionar sin perder → la evolución de estructura probada.

En la práctica — En la práctica — Desplegar una aplicación

  1. Genere el ejecutable en la configuración correcta y después cree el programa de instalación con el asistente (archivos, accesos directos, requisitos previos, base), como Yacine.
  2. Compruebe que todo está incluido: framework WinDev, accesos nativos a la base, imágenes, informes, recursos, archivos de configuración.
  3. Pruebe la instalación en una máquina virgen, distinta de su puesto de desarrollo — la única forma de detectar lo que falta.
  4. Distinga primera instalación (crear la base) y actualización (preservar los datos, hacer evolucionar la estructura); guarde antes de cualquier actualización y prevea una marcha atrás.
Entrega una aplicación que se instala limpiamente en el cliente, se actualiza sin perder los datos y cuenta con una solución de repliegue en caso de problema.

Guion paso a paso — desplegar como Yacine (5 min)

1) Genere el ejecutable (configuración 32/64 bits). 2) Cree el programa de instalación con el asistente (archivos, accesos directos, requisitos previos, base). 3) Compruebe la presencia del framework, los accesos nativos, las imágenes, informes y archivos de configuración. 4) Instale en una máquina virgen y anote todo lo que falta. 5) Configure la actualización automática. 6) Para una actualización en producción: guarde, pruebe la conversión sobre una copia de los datos reales, planifique fuera de horas críticas y prepare una marcha atrás.

Nunca entregue un ejecutable sin haberlo instalado en una máquina virgen: su puesto de desarrollo enmascara las carencias.

Plantilla para copiar y pegar — mi ficha de despliegue

Generation  : executable (configuration 32/64 bits)
Bibliotheque: fenetres, etats, requetes empaquetes
Installeur  : assistant (fichiers, raccourcis, prerequis, base)
MAJ auto    : l'application detecte et installe la nouvelle version
Ne rien oublier : framework, acces natifs, images, etats, config, polices
REGLE D'OR  : test sur MACHINE VIERGE (jamais le poste de dev)
Mise a jour : sauvegarder AVANT, tester sur COPIE, retour arriere

Instalador generado

Yacine genera un instalador completo con el asistente de WinDev.

Prueba en máquina virgen

Yacine instala en una máquina limpia y detecta un framework que falta.

Actualización automática

Yacine configura la aplicación para detectar e instalar las nuevas versiones.

Marcha atrás

Yacine prepara una solución de repliegue si la nueva versión da problemas.

Prudencia: Recordatorio genérico: un despliegue y una actualización afectan a datos reales y a puestos en producción. Guarde siempre los datos (y la versión anterior) antes de una actualización, pruebe la conversión de estructura sobre una copia representativa, planifique la intervención fuera de las horas críticas, compruebe que nadie utiliza la aplicación durante la operación y prevea una marcha atrás. Nunca entregue un ejecutable sin una prueba en máquina virgen.

✓ Buenas prácticas

  • Comprobar que no falta nada (framework, accesos nativos, recursos).
  • Probar en una máquina virgen, nunca solo en su puesto.
  • Para una ACT: guardar, probar sobre una copia, prever una marcha atrás.

✗ Errores frecuentes

  • Entregar el ejecutable solo creyendo que basta.
  • Probar únicamente en el puesto de desarrollo.
  • Actualizar sin copia de seguridad ni prueba sobre copia.

Puntos clave

  • La cadena de entrega: generación, biblioteca, instalador, actualización automática.
  • ⚠️ No olvide nada: framework, accesos nativos, imágenes, informes, configuración, fuentes.
  • ⚠️ Regla de oro: probar la instalación en una máquina virgen.
  • Gestionar los datos: guardar antes de una ACT, probar sobre una copia, prever una marcha atrás.

Reto 48 h — aplícalo mañana

Como Yacine, genere el ejecutable de su aplicación y cree su programa de instalación. Instálelo en una máquina virgen (o una máquina virtual limpia) y anote todo lo que falta: framework, accesos nativos, imágenes, informes, fuentes. Corrija el instalador hasta que la instalación sea limpia. Después configure la actualización automática y, si su base debe evolucionar, pruebe la conversión sobre una copia de los datos reales manteniendo una marcha atrás.

Lista de salida de la sección
  • Genero el ejecutable y creo un programa de instalación.
  • Compruebo que no falta nada y pruebo en máquina virgen.
  • Gestiono los datos en la actualización, con copia de seguridad y marcha atrás.
Autoevaluación 1-5: ¿pruebo siempre mi instalación en una máquina virgen?Autoevaluación 1-5: ¿sé preparar una actualización sin riesgo para los datos?

Preguntas frecuentes

¿Por qué es indispensable probar la instalación en una máquina virgen?

Porque su puesto de desarrollo ya contiene todo lo necesario (framework, controladores, accesos nativos, fuentes, componentes): la aplicación funciona necesariamente allí, lo que enmascara todo lo que faltará en el cliente — solo una prueba en máquina virgen revela la verdad. Lo que revela la prueba: framework ausente o incompleto, accesos nativos no desplegados, recursos olvidados (imágenes, informes, configuración, plantillas), fuentes ausentes, derechos insuficientes, parámetros regionales diferentes, rutas codificadas de forma fija. Es la causa n.º 1 de los despliegues fallidos, y se descubre en el peor momento: el día de la entrega.

¿Cómo gestionar las actualizaciones de una aplicación ya en producción?

Con método: guardar los datos antes, probar la actualización sobre una copia, prever la evolución de la estructura, planificar fuera de las horas críticas, informar a los usuarios y mantener una posibilidad de marcha atrás. Los retos específicos de una actualización: existen datos reales que preservar, la estructura puede haber evolucionado (nuevas rúbricas, tipos modificados) y un fallo se ve de inmediato. Guarde, pruebe sobre una copia representativa (un conjunto de pruebas artificial no revela los casos particulares acumulados), compruebe que nadie utiliza la aplicación, despliegue y después controle las funciones principales y algunos datos conocidos.

Comprueba tu comprensión

¿Cuál es la regla de oro antes de entregar una aplicación WinDev?

Recursos adicionales (opcional, para ir más allá)

Examen del nivel 4Preguntas inéditas y más difíciles para validar tus conocimientos