0
Я пытаюсь получить переменную среды во время установки с помощью RegQueryStringValue,Получить переменную окружения с помощью RegQueryStringValue в Inno Setup
Я использую следующий код
[Setup]
DefaultGroupName="{code:GetPath}"
[Code]
function GetPath(Value: String): String;
var
OrigPath: string;
begin
if RegQueryStringValue(HKLM, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'GCC', OrigPath) then
Result := OrigPath;
end;
Но установщик дает мне ошибку во время установки ,
Может ли кто-нибудь сказать мне, почему или что я могу использовать вместо этого?
Какая ошибка? Почему бы просто не использовать '{% GCC}'? Этот метод получит фактическое текущее значение, а не значение, хранящееся в реестре, для следующей загрузки Explorer. Вы также можете хотеть, чтобы tp предоставил значение по умолчанию, если оно не выйдет. – Deanna
Когда я использую DefaultGroupName = "{% GCC}", он говорит, что я должен ввести имя папки! даже если это значение: C: \ MinGW \ bin \ gcc.exe в системной переменной. – user2333346
ОК? в чем проблема? 'C: \ MinGW \ bin \ gcc.exe' - это имя файла. 'DefaultGroupName' ожидает имя группы меню. Использование 'C: \ MinGW \ bin \ gcc.exe' для этого не имеет смысла. – Deanna