gpt4 book ai didi

registry - 尽管 key 存在,Inno Setup RegKeyExists 返回 False

转载 作者:行者123 更新时间:2023-12-05 04:27:36 47 4
gpt4 key购买 nike

有人能告诉我这段代码有什么问题吗?

[Code]
const
OldVersionRegKey = '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppId}_is1';

var
HasOldVersion: Boolean;

function GetKey : Integer;
begin
if IsWin64 then
Result := HKLM64
else
Result := HKLM32;
end;

procedure CheckOldVersion;
begin
HasOldVersion := RegKeyExists(GetKey, OldVersionRegKey);
// ...
end;

因为无论我做什么,答案都是 False 而 key 确实存在?

我已经尝试了一切,关键不在错误结果寄存器中,关键在错误结果寄存器中,在不同级别的数据库上,在 32 位数据库上,在 64 位数据库上,测试都取决于在架构上(就像当前的代码),但什么都不做,结果和总是一样。

预先感谢您的帮助。

最佳答案

键路径的开头不应有斜杠。查看 RegKeyExists documentation 中的示例.

const
OldVersionRegKey = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppId}_is1';

因为你没有使用 64-bit install mode ,根键始终是 HKLM32

HasOldVersion := RegKeyExists(HKLM32, OldVersionRegKey);

或者,如果您希望脚本与 64 位安装模式兼容,请使用 Is64BitInstallMode , 而不是 IsWin64

关于registry - 尽管 key 存在,Inno Setup RegKeyExists 返回 False,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72779539/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com