Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

LAUNCHER - VÉRIFICATEUR DE NOUVELLE VERSION AVANT EXÉCUTION D'UNE APPLICATION (OU D'UN FICHIER DÉPENDANT D'UNE APPLICATION)


Information sur la source

Catégorie :Exécution Classé sous : Update, Launcher, Exécution, Vérification, Jour Niveau : Débutant Date de création : 17/10/2007 Date de mise à jour : 03/11/2007 01:07:33 Vu / téléchargé: 4 632 / 297

Note :
Aucune note

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Bonjour,

Cette application sert à exécuter un exécutable ou un fichier nécessitant une application "mère" en vérifiant s'il y a lieu de le mettre à jour avant de le "launcher".

Un besoin récurrent m'a encouragé à effectuer ce développement, ne trouvant aucune source similaire sur le net.
Développeur, entre autres, d'applications Access, le problème des mises à jour se posait souvent.

L'application est développée en VB6 et nécessite la DLL VB6FR.DLL (dans System32) pour fonctionner.
Elle ne fonctionne pas sous Vista 64 bits :(  J'envisage une migration sous VB 2005.

Fonctionnement :
Le paramétrage du Launcher est stocké dans un fichier INI (Launcher.ini) créé au même endroit que le Launcher.
Pour effectuer le paramétrage, le fichier Launcher.ini doit être absent.
Renseigner l'écran de paramétrage en spécifiant :
- Le nom de l'application (inutilisé dans le code en fait)
- Le chemin de l'application "mère" (par exemple MSACCESS.exe pour un fichier MDB), ne rien mettre si c'est un fichier EXE à exécuter
- Le chemin de l'application à exécuter
- Le chemin de l'application de référence (dernière version)

L'application sait s'il y a une mise à jour à effectuer à l'aide d'un fichier "version.txt" qui se trouve au même endroit que l'application de référence.
Le fichier en question est un simple fichier texte qui doit contenir une ligne désignant le numéro de version (par exemple 20071016)

La validation du paramétrage crèe le fichier Launcher.ini dans le répertoire du Launcher.

Après il s'agit de créer par exemple un raccourci du Launcher sur le bureau et de l'exécuter.

Je suis ouvert à tout commentaire !
 

Source

  • La source se trouve dans le fichier zippé.
La source se trouve dans le fichier zippé.

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

17 octobre 2007 04:48:22 :
Correction de la description - 20071016
01 novembre 2007 01:07:24 :
Correction de certains commentaires et ajout de vérifications. Ajout d'une icône associée à l'application. Ajout du nom de l'application au Caption du formulaire principal.
01 novembre 2007 01:08:37 :
Correction de certains commentaires et ajout de vérifications / Ajout d'une icône associée à l'application / Ajout du nom de l'application au Caption du formulaire principal.
01 novembre 2007 02:03:09 :
Possibilité de glisser le fichier .ini sur l'application pour accéder à l'écran de paramétrage.
03 novembre 2007 01:07:34 :
Plusieurs corrections et optimisations concernant la mise à jour et la gestion d'erreur.

Commentaires et avis

signaler à un administrateur
Commentaire de asimengo le 18/10/2007 13:08:35

J'avais également un même souci mais que j'ai résolu autrement. L'application d'ouverture après validation du pwd fait un contrôle de version, l'idée est la même va lire dans une table (fichier ini chez toi) la date de la dernière mise à jour du programme et contrôle l'information avec l'information stockée dans la base de registre du poste qui exécute l'application si différence alors lancement automatique des mises à jour et revoie des informations (nom machine, nom session windows, nom user, date mise a jour) sur le serveur.

Conséquence mise à jour à la demande et depuis le serveur je sais quels sont les postes à jour. Bien évidement ceci n'a d'intérêt que pour les cas de multi utilisateurs sur un réseau.

Mais en fait c'est un peu plus complexe que ça parcequ'il faut définir à l'avance la stratégie de mise à jour, avec access, en général ce n'était que les bases de données des tables temporaires, mais avec VB, c'est un peu plus complexe (dll, ocx, ...). Le but recherché étant que les postes soient automatiquement mis à jour sans devoir à intervenir sur chaque poste, uniquement sur le serveur.

signaler à un administrateur
Commentaire de asimengo le 18/10/2007 14:24:18

Je viens de jeter un coup d'oeil à ton appli, l'idée est bonne et peut s'appliquer à n'importe quel programme mais je trouve qu'il faille y apporter quelques améliorations que je suggère là.

Laucher.ini
-----------
Nom Appli: ....
Description Appli: .... (Juste pour compléter le message de demarrage)
Executable: ... (rien si fichier à exécuter exe)
Fichier a executer: ...

A mon avis il n'ya pas besoin spécifier le chemin du fichier version.txt qui sera tjrs dans le même dossier que Fichier à executer. Le fichier version.txt est crée une fois et ne changera pas. Par contre il contient les informations de la liste des fichiers à mettre à jour.

Au niveau du dossier du fichier executable, version.txt est un tableau de 3 colonnes chemin complet fichier source, Destination (facultatif, chemin relatif par rapport au dossier mère du client), version. Seul celui qui a concu le programme pourra jouer avec.

Au niveau de chaque poste le programme ira lire dans le registre pour trouver le chemin de version.txt du poste et lira également dans le registre le dossier mère où iront les mises à jour. Ce fichier contiendra également 3 colonnes Nom du fichier (uniquement le nom du fichier sans chemin), destination (dossier relatif au dossier mère client et prioritaire sur destination sur serveur), version.

Si un fichier à mettre à jour ne se trouve pas le listing du client alors la mise à jour est quand même faite et le fichier listé dans le fichier version.txt du poste.

Voila c'est en gros ce que j'avais mis en place que j'ajoute au tien. L'avantage du tien est qu'il sagit d'un programme totalement independant de l'appli que tu veux mettre à jour.

Mais en fait pour aller plus loin le fichier version.txt pourrait avoir la structure du fichier setup.lst, ce qui serait parfait, dll à enregistrer, ...

Voila, bonne prog

A+

signaler à un administrateur
Commentaire de UnrealH le 19/10/2007 01:56:34

Salut Asimengo,

Merci pour tes commentaires. En effet, les paramètres Nom Appli et Description Appli seraient bien à afficher dans le message de démarrage, en mettant Nom Appli c'est ce que je souhaitais faire, mais pas pu par manque de temps :)
Enfin je l'ajouterai dans la version 2005.

Ta version est plus complexe à mettre en oeuvre mais elle est sans doute plus sûre. Ma méthode sert surtout à des personnes qui veulent déployer facilement une application et qui ne sont pas forcément des geeks de l'informatique :)
Donc j'y suis allé au plus simple.

Bon code à toi aussi !

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

bouuuuuuh.....mise à jour d'une table !!! [ par preempalver ] Bonjour,j'ai une table access et je souhaite la mettre à jour grace à des valeurs récupérées en boucle et mises dans des variables. La boucle marche m Ne pas avoir de msgbox quand on fait un Update [ par tranquiloubilou ] ThomThomsalut salut je sais pas si vous savez mais quand on exécute un Update sous VBA On a un msgbox qui apparait pour dire "Vous allez mettre à jour Problème de requête : UPDATE [ par loupopeye ] Salut,J'essaie de faire une application, j'ai presque fini mais je n'arrive pas à faire fonctionner ma requête UPDATE, elle est trop longue et ne tien Update [ par lami75 ] svp je souhaite mettre à jour des données d'un champ d'une table acces!suis je obligée de mettre à jour au meme moment les données du meme cham Windows Update et LiveUpdate [ par Cpapy ] Bonjour, j'ai été obligé à plusieurs reprises de restaurer Windows XP avec les masters CD. J'ai de ce fait été obligé derecharger toutes les mises sql update (*2?) [ par acorna ] Hello,J'ai besoin de mettre à jour un champ. J'utilise pour cela une requete sql update. L'ennui, c'est que le champ doit etre mis à jour à partir d'a Mettre a jour ma table via UPDATE : marche pas [ par foliop ] salutjai un bouton avec dedans :Dim update As New ADODB.Recordsetn = Text16.Textp = Text18.TextSet update = DE1.Connection1.Execute("Update résultats Problème de requête de mise à jour - Update - [ par rmaj ] Bonjour, je m'arrache les cheveux depuis 2 jours sur une simple requête de mise à jour ; la requête est la siuvante : "Update MATERIE update [ par ToToL ] Bonjour J'ai un probleme qui a du arriver a certain d'entre vous : Je cherche comment executer un code php tout le jour à la meme heure ( par Probleme Update avec Num Auto [ par poulpo21 ] Bonjour,J'aurais besoin d'un coup de main car je rencontre un probleme pour la mise à jour de ma table.Je fais une requete avec un update.To


Nos sponsors

Sondage...

CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.