InnoSetup - HKEY_LOCAL_MACHINE如何添加值?

时间:2014-07-07 13:36:04

标签: windows windows-installer environment-variables inno-setup regedit

我的innosetup脚本中有这个,但它在注册表中根本没有添加任何东西。

[Registry]    
Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "Test"; ValueData: "{app}\test.vbs";

知道为什么不添加它?

编辑:

test.vbs:

Set oShell = CreateObject("Wscript.Shell")
Dim strArgs
strArgs = "cmd /c runpython.bat"
oShell.Run strArgs, 0, false

runpython.bat:

C:\Python27\python.exe "C:\Program Files (x86)\Google\dev_appserver.py" --host 0.0.0.0 --port 8080

1 个答案:

答案 0 :(得分:2)

好的 - 解决了,就像评论中提到的那样是32位/ 64位。

InnoSetup问题:

[Registry]    
Root: HKLM64; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "Test"; ValueData: "{app}\test.vbs"; Check: IsWin64;
  • 在Windows 64位PC上,此处需要HKLM64而不是HKLM

test.vbs问题:

Set oShell = CreateObject("Wscript.Shell")
Dim strArgs
strArgs = "cmd /c runpython.bat"
oShell.Run strArgs, 0, false
  • 这里VBS因为没有执行 strArgs = "cmd /c ""C:\program files\blabla.bat"""