tes*_*ino 10 registry inno-setup
我使用Inno Setup创建了一个设置,并希望使用Pascal Script查询注册表
if RegKeyExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Classes\\Installer\UpgradeCodes\342603A924F08FA4B95B5C283FC13D13') then
Run Code Online (Sandbox Code Playgroud)
我的设置是32位(我想要安装的软件),但在64位系统上,查询被重定向到 HKCR\Wow6432Node\\Installer\UpgradeCodes
当然,即使它存在,也找不到钥匙.即使我的设置仍为32位,如何检测密钥?
tes*_*ino 26
我想到了.您可以在脚本中创建这样的辅助函数:
function GetHKLM: Integer;
begin
if IsWin64 then
Result := HKLM64
else
Result := HKLM32;
end;
Run Code Online (Sandbox Code Playgroud)
然后你就像使用它一样:
RegQueryStringValue(
GetHKLM, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'XYZ', Variable);
Run Code Online (Sandbox Code Playgroud)