Bonjour tout le monde,
Notre application delphi est installée chez nos clients et elle apparaît dans "Programmes et fonctionnalités" (Ou Ajout/Suppression de programme sous XP) en tant que "NomDuProduit vx.x"
vx.x étant la version du produit lors de son installation.
Lorsque nous faisons des mises à jour de notre produit, nous remplaçons les exécutables et les dll de l'application. Nous réalisons ensuite une mise à jour de notre base de données.
Nous aimerions pouvoir modifier la version du produit telle qu'elle apparaît dans vx.x
Après quelques recherches, j'ai réussi à changer manuellement ce nom en modifiant la valeur "ProductName" dans la clé "HKLM\SOFTWARE\CLASSES\INSTALLER\PRODUCTS\A1BXXXXXXX...\" de la manière suivante :
J'ai plusieurs questions à ce sujet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 procedure TForm1.btnChangerVersionClick(Sender: TObject); var MyRegistry: TRegistry; iKey: Integer; valKey: string; MyList: TStringList; Begin If edtVersion.Text = '' Then Exit; MyRegistry:=TRegistry.Create; MyList:=TStringList.Create; With MyRegistry Do Begin RootKey:=HKEY_LOCAL_MACHINE; If OpenKey(strRootKey,False) = True Then GetKeyNames(MyList); CloseKey; For iKey:=0 To MyList.Count-1 Do Begin RootKey:=HKEY_LOCAL_MACHINE; OpenKey(strRootKey+MyList[iKey],False); valKey:=ReadString(strNomCle); If Pos(UpperCase(strNomAppli),UpperCase(valKey)) > 0 Then WriteString(strNomCle,strNomAppli+edtVersion.Text); CloseKey; End; End; End;
- Mon approche pour changer ce nom (En modifiant ProductName) est-elle correcte?
- La clé dans laquelle il faut rechercher "ProductName" est-elle toujours identique (Windows XP/Vista/7/8, 32 ou 64 bits)?
- Actuellement, pour retrouver ma bonne clé, je parcours toutes les clés de "PRODUCTS" et je recherche le bon ProductName. Y a-t-il un moyen de connaître le nom "A1BXXXXX...\ d'après mon exécutable pour pouvoir y accéder directement?
Merci d'avance de vos réponses
Salutations
Nono
Partager