Syphou
Messages postés52Date d'inscriptionjeudi 27 avril 2006StatutMembreDernière intervention 6 juin 2011
-
2 mars 2007 à 10:17
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 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 ?
A voir également:
"Build date" "php version 4.4.5" "server api" "php variables"
Syphou
Messages postés52Date d'inscriptionjeudi 27 avril 2006StatutMembreDerniè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, ...
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 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...).
Syphou
Messages postés52Date d'inscriptionjeudi 27 avril 2006StatutMembreDerniè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.
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 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 #