2017-10-11 1 views
-1

Ich versuche, in die reg zu schreiben und kann nicht den richtigen Weg finden.NSIS WriteRegSTR oder WriteRegDword

HKEY_LOCAL_MACHINE 
"SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "XboxStat" '"C:\\Program Files\\Microsoft Xbox 360 Accessories\\XboxStat.exe\" silentrun' 
"SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "Hyperspin" "D:\\Arcade\\Hyperspin.exe\" 

ich versucht habe:

WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "Hyperspin" "D:\\Arcade\\Hyperspin.exe\" 
WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "Hyperspin" "D:\\Arcade\\Hyperspin.exe\" 
WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "Hyperspin" "D:\\Arcade\\Hyperspin.exe\" 
WriteRegDWORD HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "Hyperspin" "D:\\Arcade\\Hyperspin.exe\" 

Aber nichts jemals in reg auftaucht.

Antwort

0

1) Ihr Installateur muss run as a elevated administrator auf HKLM schreiben. Fügen Sie Ihrem Skript RequestExecutionLevel Admin hinzu.

2) Auf 64-Bit-Windows gibt es two different views der Registrierung und standardmäßig schreiben 32-Bit-Anwendungen auf den Schlüssel HKLM\Software\Wow6432Node in der "echten" Registrierung, die Sie in RegEdit sehen. Verwenden Sie in NSIS SetRegView, um in die 64-Bit-Registrierung zu schreiben.

+0

Vielen Dank, dass ich mir stundenlang den Kopf kratzte, um das herauszufinden und alles, was ich brauchte, war SetRegView. :) –