我正在尝试使用 Inno Setup 的 Pascal 脚本从 Windows 注册表(在本例中为 Google Sketchup)获取应用程序的安装目录,以便我可以在那里安装插件。
注册表项没有名称,它在 Regedit 中只有“(默认)”。
我试过这个:
RegQueryStringValue( HKLM, 'SOFTWARE\Google\Google Sketchup 6', '(Default)', pluginLoc );
但它不返回值。有什么建议么?
我正在尝试使用 Inno Setup 的 Pascal 脚本从 Windows 注册表(在本例中为 Google Sketchup)获取应用程序的安装目录,以便我可以在那里安装插件。
注册表项没有名称,它在 Regedit 中只有“(默认)”。
我试过这个:
RegQueryStringValue( HKLM, 'SOFTWARE\Google\Google Sketchup 6', '(Default)', pluginLoc );
但它不返回值。有什么建议么?
只留下SubKeyName空的,像这样:
[Code]
function InitializeSetup(): Boolean;
var
V: string;
begin
if RegQueryStringValue(HKLM, 'SOFTWARE\Google\Google Sketchup 6', '', V) then
MsgBox('Value is "' + V + '"', mbInformation, MB_OK);
Result := TRUE;
end;
底层 API 调用的匹配文档适用于RegQueryValueEx(),其中指出:
注册表值的名称。
如果 lpValueName 为 NULL 或空字符串“”,则函数检索键的未命名或默认值(如果有)的类型和数据。