Inno Setup Запрашивает у пользователя папку и сохраняет значение
У меня есть следующие потребности:
[Run]
;run robocopy.exe source dest/OLD/[source_contents] /options
Куда:
источник должен быть указан пользователем на машине назначения (это может изменяться в зависимости от физической платформы)
место назначения будет идентично только определенной пользователем исходной папке, а подпуть OLD/[source_contents]
будет автоматически создан при вводе robocopy.
Я думал использовать "сценарий-константу", но проблема в том, что мне нужно каким-то образом хранить параметр подсказки "источник" где-то (я не могу требовать две подсказки для одного и того же места).
Благодарю.
1 ответ
Скриптовая константа - это путь. Просто нужно убедиться, что вы один раз предложите пользователю и повторно использовать результаты как для источника, так и для пути назначения.
Вы можете, например, использовать CreateInputDirPage
и реализовать скриптовую константу для ссылки на путь, указанный пользователем на странице:
[Run]
Filename: "robocopy.exe"; Parameters: "{code:CopyDir} {code:CopyDir}\OLD"
[Code]
var
CopyDirPage: TInputDirWizardPage;
procedure InitializeWizard();
begin
CopyDirPage :=
CreateInputDirPage(wpSelectDir, 'Select source directory', '', '', False, '');
CopyDirPage.Add('Source directory:');
end;
function CopyDir(Params: string): string;
begin
Result := CopyDirPage.Values[0];
end;