Gérer les versions

Syphou Messages postés 52 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 6 juin 2011 - 2 mars 2007 à 10:17
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 2 mars 2007 à 11:51
Bonjour,

Voici mon problème xD

On me demande dans mon programme de gérer les versions, cest a dire que l'utilisateur, quand il execute le programme, celui ci doit se connecter a mon webservice, verifier la version du programme (simple champ dans une BD) si jamais la version courante est > a celle du client, celui ci doit télécharger la derniere version et sinstaller tout seul ... un peut comme msn lorsqu'il y a une mise a jour. Mais je ne vois pas comment faire pour forcer le telechargement du programme et surtout qu'il sinstal tout seul... quelqu'un a déja fait quelque chose dans le genre ?

4 réponses

Syphou Messages postés 52 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 6 juin 2011
2 mars 2007 à 10:26
En fait, je ne doit pas regenere le setup.
Donc je reexplique.
Lorsque le client execute le prog, celui ci va voir sur le webservice et compare son champ version, si la version courante est > a celle du client, celui ci doit uniquement recharger le nouvel executable (donc pas tout le setup, vu que le prog (dll,...) est deja installer chez le client) juste charger le nouvel executable et remplacer le sien.

Comment forcer le telechargement, couper le programme courant du client (car il faut remplacer lexe) et placer lexecutable a lendroit où se trouve le courant ...

Peut etre devoir cree un petit prog qui se lance avant le programme principal qui se charge daller voir la version, si nouvelle, charge lexe, remplace et lexecute, mais comment trouver ou est lancien exe, comment forcer le telechargement, ...

sa doit etre faisable vu que msn sa marche

quelqu'un a deja fait sa?
0
tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 33
2 mars 2007 à 11:07
Pour trouver l'ancien exe, tu peux peut être enregistrer dans les documents du client un fichier texte qui contient le chemin d'installation de ton logiciel (à mettre dans le logiciel de base).

 Dim hShellObject
    Dim bKey
    Dim kpKey
  
    Set hShellObject = CreateObject("WScript.Shell")
    'cherche l'emplacement du répertoire AppData de l'utilisateur
    bKey = hShellObject.RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData")
    MsgBox (bKey)
    bKey = bKey & "\NomDeTonDossier" & eProductName
    If Dir(bKey, vbDirectory) <> eProductName Then ' on recherche si le rep existe
        kpKey = hShellObject.RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData")
        kpKey = kpKey & "\NomDeTonDossier"
        If Dir(kpKey, vbDirectory) <> "NomDeTonDossier" Then
            MkDir kpKey 'creer le repertoire s il n existe pas
        End If
        MkDir bKey
    End If

Ensuite, il te suffira de créér un petit logiciel qui te recupere le exe sur ton serveur et le copie à la place de celui indiqué dans le chemin du fichier texte....

J'espere que ca t'aidera!!!
         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
0
Syphou Messages postés 52 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 6 juin 2011
2 mars 2007 à 11:25
Oui ca va m'aider :D merci
et pour ce qui est du telechargement sans que lutilisateur le voi, on vien de mexpliquer, il suffit d'utiliser le service ftp par defaut de windows, faire une commande get :D j'avais oublier qu'il y avais sa.

Merci
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
2 mars 2007 à 11:51
pas besoin de fichier texte pour trouver l'executable. Il suffit que lors de l'installation, tu installe systématiquement ton petit utilitaire au même endroit que ton executable quel que soit cet endroit.

Ton petit utilitaire sait qu'il doit chercher l'executable au même endroit que son emplacement à lui (App.Path)

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
Rejoignez-nous