Red de conocimiento informático - Conocimiento informático - Cómo permitir que el programa cliente actualice automáticamente la versión

Cómo permitir que el programa cliente actualice automáticamente la versión

La idea de utilizar C# para implementar actualizaciones automáticas de software

Prólogo

Durante mucho tiempo, los programadores han estado debatiendo si utilizar la estructura Cliente/Servidor o Navegador/Servidor en estas. Debates, La estructura C/S tiene mala capacidad de mantenimiento del programa, dificultad de configuración, actualizaciones inconvenientes y altos costos de mantenimiento, todos los cuales son factores importantes. Sin embargo, cuando una aplicación debe utilizar la estructura C/S para lograr bien sus funciones, ¿cómo solucionamos los problemas de implementación del cliente y actualización automática? La implementación es muy simple, simplemente haga clic en el instalador. La dificultad radica en si se pueden lograr actualizaciones automáticas cuando se lanzan nuevas versiones [3]. Ahora, nuestro objetivo es simplemente desarrollar un sistema de actualización automatizado reutilizable que sea independiente de una aplicación específica. A continuación proporcionaré un sistema de actualización automatizado reutilizable escrito en C#.

2 Dificultades para realizar actualizaciones automáticas de software

En primer lugar, para encontrar actualizaciones en el servidor remoto, la aplicación debe tener un método de consulta de red, lo que requiere programación de red. y comunicación entre la aplicación y el servidor Protocolo simple de comunicación.

El segundo paso es la descarga. La descarga puede parecer una obviedad para la web, pero existen algunas advertencias cuando se trata de descargar archivos solicitados por el usuario y descargar archivos grandes sin el consentimiento del usuario. Las aplicaciones amigables de actualización automática utilizarán el ancho de banda restante para descargar actualizaciones. Suena simple, pero es un desafío técnico que afortunadamente ya tiene solución.

La tercera consideración es el proceso de sustitución de la aplicación original por una nueva versión. Este problema es más interesante porque requiere que el código se elimine del sistema en tiempo de ejecución. Hay muchas formas de lograr esta función [5]. El programa en este artículo reemplaza principalmente la nueva versión de la aplicación comparando los números de fecha. las versiones antiguas y nuevas del programa.

3 Principio para realizar la actualización automática de software en línea

Escriba dos programas, uno es el programa principal y el otro es el programa de actualización;

1. Inicie el programa de actualización, que se conecta al sitio web y descarga el nuevo programa principal (incluidos los archivos de biblioteca compatibles, archivos de configuración XML, etc.) en una carpeta temporal. 2. El programa de actualización obtiene la última fecha de actualización o el número de versión o el tamaño de archivo de la nueva versión del programa del archivo de configuración XML del lado del servidor;

3. o el número de versión de la última fecha de actualización del programa cliente original o el número de versión o el tamaño del archivo, y compare los dos si se descubre que la fecha del programa actualizado es mayor que la última fecha del programa original, el usuario será; se le solicitará que actualice o use la versión existente para comparar con la última versión, y si se encuentra que es la más reciente, se le solicitará que actualice; algunas personas usan otros atributos, como el tamaño del archivo, para comparar; el tamaño del archivo del programa actualizado es mayor que el tamaño de la versión anterior del programa, solicitarán una actualización

2. Algunas personas también usan otros atributos como el tamaño del archivo después de la comparación; Si se descubre que el tamaño del archivo del programa actualizado es mayor que el tamaño del programa anterior, se solicitará una actualización;

3. versiones para solicitar a los usuarios que actualicen.

4. Si el usuario elige actualizar, obtendrá una lista de archivos descargados y comenzará a descargar documentos en lotes.

5. sido actualizado. El programa de actualización detectará si el programa principal anterior está activo y, si está activo, cerrará el programa principal anterior;

6. Elimine el programa principal anterior y copie los archivos en la carpeta temporal a la correspondiente. ubicación;

7. Verificar el estado del programa principal, si el estado está activo, iniciar el nuevo programa. Si el estado está activo, inicie el nuevo programa principal;

8. Cierre el programa de actualización y la actualización se completará [4].

4 pasos clave para implementar la actualización en línea usando C#

Aquí, utilizo principalmente información de fecha para detectar si es necesario descargar una versión actualizada.

4.1 Preparar un archivo de configuración XML

El nombre del archivo es AutoUpdater.xml, que sirve como plantilla de actualización y muestra la información que necesita actualizarse.

El nombre es AutoUpdater.xml, que es una plantilla de actualización y muestra la información que debe actualizarse.