![]() |
Innosetup trägt die Registryeinträge nicht ein
Guten Tag Delphianer,
Das Setup das ich mit InnoSetup erstellt habe trägt nicht alle RegistryEinträge ein. Es werden immer nur die jeweils ersten Einträge übernommen.
Delphi-Quellcode:
Es wird nur der Eintrag: HKEY_CURRENT_USER\BPSLoge\Config\Anmeldung\Datenba nk mit dem dazugehörenden Wert eingetragen.
[Registry]
Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "GDB"; ValueData: "C:\BPSLoge\Datenbank\Loge.GDB"; Flags: createvalueifdoesntexist uninsdeletekey Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "UserName"; ValueData: "SYSDBA"; Flags: createvalueifdoesntexist uninsdeletekey Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "Produkt-Version"; ValueData: "2.2.0.0"; Flags: createvalueifdoesntexist uninsdeletekey ... Alle anderen Einträge werden ingnoriert. Es ist auch egal ob ich mit Adminrechte installiere. Da kann man sich die Haare raufen. Aber woran mag es nur liegen??? Was läuft hier völlig falsch?? Andere mit Innosetup erstellten Installationsroutinen funktionieren problemlos! Mit Gruß HPB |
AW: Innosetup trägt die Registryeinträge nicht ein
Warum in die Registry schreiben? Diese ist nicht einfach zu benutzen; je nach Betriebssystem teilweise unterschiedlich usw.
Einfach die gute alte Ini nehmen und wenn nötig verschlüsseln oder im Verzeichnis %Programdata% ablegen, dann hat man es leichter. |
AW: Innosetup trägt die Registryeinträge nicht ein
Wie sieht es mit den Rechten aus? Evtl. werden für die anderen Zweige Administratorrechte gefordert (bin mir ziemlich sicher, daß das so ist).
|
AW: Innosetup trägt die Registryeinträge nicht ein
Mach doch mal ein Semikolon an die Zeilenenden.
|
AW: Innosetup trägt die Registryeinträge nicht ein
Zitat:
vielen Dank für die Antwort. Ich habe Semikolons an das Zeilenende gesetzt. Keine Wirkung. Danach habe ich die Zeilen vertauscht. D. H. den Eintrag der geschrieben wird, unter den den Eintrag der nicht geschrieben wird. Es wird doch immer der gleiche Eintrag geschrieben. 1. Version
Delphi-Quellcode:
In die Registry wird der 2. Eintrag eingetragen.
[Registry]
Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "UserName"; ValueData: "SYSDBA"; Flags: createvalueifdoesntexist deletekey; Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "GDB"; ValueData: "C:\BPSLoge\Datenbank\Loge.GDB"; Flags: createvalueifdoesntexist uninsdeletekey; 2. Version
Delphi-Quellcode:
In die Registry wird der 1. Eintrag geschrieben.
[Registry]
Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "GDB"; ValueData: "C:\BPSLoge\Datenbank\Loge.GDB"; Flags: createvalueifdoesntexist uninsdeletekey Root: "HKCU"; Subkey: "BPSLoge\Config\Anmeldung\Datenbank"; ValueType: string; ValueName: "UserName"; ValueData: "SYSDBA"; Flags: createvalueifdoesntexist deletekey Die Semikolons am Ende der Zeilen werden von InnoSetup wieder gelöscht. Sie haben wohl keine Bedeutung für den Ablauf. Wie soll man sich dieses Vorhalten erklären????? Ist es vielleicht der falsche Regstryzweig? Mit Gruß HPB |
AW: Innosetup trägt die Registryeinträge nicht ein
Stimmen denn die Flags?
|
AW: Innosetup trägt die Registryeinträge nicht ein
Zitat:
Ich habe alle Flags entfernt und siehe da die Werte werden nun eingetragen. Dies Wahl "createvalueifdoesntexist" darf wohl nur beim ersten Eintrag abgefragt werden. Habe ich anders verstanden. Gruß HPB |
AW: Innosetup trägt die Registryeinträge nicht ein
Zitat:
Tja, dan wird das Programm im Benutzerkontext des Administratoraccounts gestartet, somit ist CurrentUser natürlich der Administrator. :roll: Ohne Adminrechte gestartet, also innerhalb deines Accounts, solltest du eigentlich ins "eigene" CurrentUser schreiben können. ABER warum in diesem Pfad? (HKCU\BPSLoge\...) Wie wäre es mit HKCU\Software\BPSLoge\... ? |
AW: Innosetup trägt die Registryeinträge nicht ein
Nein, ich denke, es liegt am deletekey.
Du verwendest mal uninsdeletekey und mal deletekey. Ist das so gewollt? |
AW: Innosetup trägt die Registryeinträge nicht ein
Zitat:
Und wie oben erwähnt, nun werden auch alle Schlüsselwerte eingetragen. Mit Gruß HPB |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz