Как получить значение реестра в Inno Setup, если значение использует только имя по умолчанию?

Я пытаюсь получить каталог установки приложения из реестра Windows (Google Sketchup в этом случае) с помощью сценариев Pascal Inno Setup, чтобы я мог установить плагин там.

раздел реестра не имеет имени, он просто имеет "(по умолчанию)" в Regedit.

Я попытался это:

RegQueryStringValue( HKLM, 'SOFTWAREGoogleGoogle Sketchup 6', '(Default)', pluginLoc );

но он не возвращает значение. Есть предложения?

1 ответов


оставить 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 или пустая строка,"", функция извлекает тип и данные для неназванного значения ключа или значения по умолчанию, если таковые имеются.