2012-04-09 3 views
3

Wenn Inno Setup mit PrivilegesRequired = admin konfiguriert wurde, wird der Registrierungsschlüssel für die Deinstallation in HKEY_LOCAL_MACHINE gespeichert.force inno-Setup zum Speichern von Daten in HKCU mit PrivilegesRequired = Niedrig

Wie kann ich zwingen, den Registrierungsschlüssel für die Deinstallation in HKEY_CURRENT_USER zu speichern?

+0

+1, gute Frage; Aber nur eine Frage: Sind Sie sicher, dass Sie Administratorrechte für jeden Benutzer benötigen, der Ihr Setup ausführt? Vergessen Sie nicht, dass all diese Benutzer die Anmeldeinformationen des Administrators kennen müssen, um Ihre Anwendung zu installieren/deinstallieren und dass sie dieselben Ordner oder Sitzungen verwenden können. – TLama

+0

Was versuchen Sie zu erreichen? Sie könnten 'CreateUninstallRegKey = no' verwenden und den Uninstall-Schlüssel in HKCU manuell im Abschnitt" Registry "erstellen. – kobik

+1

Ich migriere vom NSIS-Installer zum Inno-Setup. Für die erste Version brauche ich administrative Vorrechte, um die alte Installation zu entfernen und einige Dinge zu verwalten. Zurzeit habe ich diese Legacy-Support-Befehle mit ShellExec ausgeführt. – gureedo

Antwort

3

Wie Ihr Titel sagte, müssen Sie PrivilegesRequired=lowest verwenden. Alles andere als das, und der "lokale Benutzer" ist möglicherweise nicht, was Sie erwarten.

Wenn das Setup Admin-Berechtigungen benötigt, um das alte Setup zu entfernen, können Sie ShellExec verwenden, stellen Sie sicher, dass die Anwendung, die Sie als das Admin-Manifest aufrufen, oder das Verb "runas" übergeben.

+1

adminifest ?? : p – Deanna

Verwandte Themen