Как получить значение реестра в программе установки Inno, если оно использует только имя по умолчанию?
Я пытаюсь получить каталог установки приложения из реестра Windows (в данном случае Google Sketchup) с помощью скриптов Pascal от Inno Setup, чтобы установить там плагин.
У раздела реестра нет имени, он просто имеет "(Default)" в 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 или пустая строка, "", функция извлекает тип и данные для неназванного значения ключа или значения по умолчанию, если таковое имеется.
Comments