我正在尝试用Inno Setup的Pascal脚本从Windows注册表(这里是Google Sketchup )获取一个应用程序的安装目录,这样我就可以在那里安装一个插件。
注册表项没有名称,只是在Regedit中有"(Default)“。
我试过这个:
RegQueryStringValue( HKLM, 'SOFTWARE\Google\Google Sketchup 6', '(Default)', pluginLoc );但是它不返回值。有什么建议吗?
发布于 2009-05-28 05:17:44
只需将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;与底层应用程序接口调用相匹配的文档是针对的,其中指出:
注册表值的名称。
如果lpValueName为NULL或空字符串"",则函数检索键的未命名或默认值的类型和数据。
https://stackoverflow.com/questions/913938
复制相似问题