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



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



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



Я попробовал это:



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


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

747   1  

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

Comments

    Ничего не найдено.