Bonjour,
Je découvre Inno setup, je dois faire un script qui à pour unique but de modifier la valeur d'une clé de registre, j'ai vu quelques bouts de codes mais je ne sais pas par ou commencer.
HELP
Bonjour,
Je découvre Inno setup, je dois faire un script qui à pour unique but de modifier la valeur d'une clé de registre, j'ai vu quelques bouts de codes mais je ne sais pas par ou commencer.
HELP
L'aide d'inno setup ne suffit pas ?
https://jrsoftware.org/ishelp/
["Setup Script Sections"][[Registry] section]
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ___ Écrivez dans un français correct !!
C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.3.2 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.1 Entreprise
OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.4)
Yes j'ai créé mon installer.
Voici mon code:
Quand je le lance il me rend cette erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 [Registry] Root: HKLM; Subkey: "Ordinateur\HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent\server"; Flags: deletevalue; Root: HKLM; Subkey: "Ordinateur\HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent"; ValueType: string; ValueName: "server"; ValueData: "http://localhost:8080/glpi-9.4.6/plugins/fusioninventory/";
RegCreateKeyEx fails with error code 87
une idée?
Curieux ceciERROR_INVALID_PARAMETER
87 (0x57)
The parameter is incorrect.
HKLM c'est juste HKEY_LOCAL_MACHINE donc ceci me semble suffisant
Code : Sélectionner tout - Visualiser dans une fenêtre à part Root: HKLM; Subkey: "Ordinateur\HKEY_LOCAL_MACHINE\SOFTWARE\...
Code : Sélectionner tout - Visualiser dans une fenêtre à part Root: HKLM; Subkey: "SOFTWARE\...
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Il y a effectivement erreur sur la subkey. Faire attention au copier/coller depuis RegEdit
Sinon, la première ligne n'a aucune utilité puisque ValueName n'est pas spécifié (server est certainement mal placé).
Mais le flag deletevalue n'a certainement pas lieu d'être du tout. Soit on veut supprimer une valeur plus utilisée (ce qui ne semble pas être le cas au regard de la deuxième ligne), soit on veut en changer le type (ex. redéfinir la valeur de string en multisz) et dans ce cas, on peut tout spécifier sur une seule ligne (effacement puis recréation).
Attention aussi au 32/64 bits. Inno Setup est une app 32 bits et va par défaut écrire dans HKLM 32 bits (WOW6432Node) mais ce copier/coller depuis RegEdit concerne peut-être (certainement) une clé 64 bits. Il faudra dès lors soit spécifier HKML64, soit demander à Inno Setup de se caler sur la plateforme par ArchitecturesInstallIn64BitMode=x64. La deuxième approche a l'avantage de rendre le script compatible 32 ET 64 bits (à part la section [Files] s'il y avait des fichiers).
J'ai changé mon script, c'est tout bon! il fallait le mettre en x64.
je voulais supprimer la valeur car le poste sur lequel j'écris le script à déjà une valeur. Mais autant pour moi les postes sur lesquels le script sera utilisé n'en auront pas. Il faut juste en assigner une.
Merci!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 #define app "http://localhost:8080/glpi-9.4.6/plugins/fusioninventory/" Root: HKLM64; Subkey:"SOFTWARE\FusionInventory-Agent"; ValueType: string; ValueName: "server"; ValueData: {app}
{app} est un mot réservé et représente le répertoire cible de l'installation.
Les variables précompilées s'utilisent ainsi {#name}.
On pourrait créer une variable app mais j'en utiliserait une autre pour éviter le quiproquos :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #define url "http://localhost:8080/glpi-9.4.6/plugins/fusioninventory/" Root: HKLM64; Subkey:"SOFTWARE\FusionInventory-Agent"; ValueType: string; ValueName: "server"; ValueData: {#url}
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager