1 votes

Valider le processus de téléchargement

"Idée de mettre à jour la nouvelle version de l'application sur la machine cliente"

J'ai lu des données binaires du serveur de base de données en utilisant WCF, créé un fichier zip avec son contenu, extrait les fichiers et mis à jour le dossier bin de notre application.

Je veux valider le processus comme si tout est en ordre, alors mettre à jour le fichier bin ou revenir à l'ancien fichier.

Est-ce que quelqu'un peut me donner une idée pour valider ce processus?

Avons-nous une idée de contrôle de somme..

1voto

Himi Points 43

Eh bien, si vous utilisez SharpZipLib pour décompresser le fichier zip, il existe une méthode TestArchive sur l'objet ZipFile qui effectuera une vérification d'intégrité de l'archive et vous indiquera si elle est valide.

Sinon, vous pouvez utiliser MD5 pour faire une empreinte sur le fichier distant et la comparer avec le fichier téléchargé pour voir si le contenu est identique.

0voto

Pentium10 Points 68884

Enregistrer sur le serveur/web la version la plus récente du projet qui est en ligne. par exemple: dans un fichier version.txt la valeur "2.1.0", ou interroger la base de données si vous avez accès.

Votre application s'exécutant sur les clients, lira périodiquement le contenu du fichier version.txt, puis le comparera avec le numéro de version intégré.

  • Si un correctif ou une version mineure est détecté par exemple 2.1.123, lance une deuxième application (updater.exe) qui effectuera silencieusement
    • la mise à jour,
    • elle téléchargera le projet mis à jour (de préférence zippé) à partir du serveur/web.
    • Arrêtez toutes les instances en cours.
    • Dézipper le contenu.
    • Sauvegarde des fichiers existants (renommer)
    • copier/installer la nouvelle version du projet,
    • Démarrer l'application (lorsque l'application redémarrera avec succès, elle supprimera son propre fichier de sauvegarde).
  • si une version majeure est détectée par exemple: 3.0.0
    • notifie l'utilisateur qu'une mise à jour majeure est disponible
    • si l'utilisateur accepte, téléchargez l'installateur
    • exécute une mise à jour complète de l'installateur

Cela aide-t-il?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X