Добавление кнопки справки на страницу мастера InnoSetup
У меня есть сценарий установки с пользовательской страницей мастера, чтобы получить выбор от пользователя. Было бы неплохо иметь кнопку справки и предоставить небольшой файл CHM с возможностью установки, чтобы я мог предоставить подробное объяснение того, каковы варианты.
Кто-нибудь знает, есть ли простой способ сделать это?
2 ответа
Решение
См. Этот пост для получения подробной информации о том, как включить файл в пакет установки, и ссылки на этот файл перед началом установки.
Чтобы добавить кнопку в мастер установки, я включил следующий код в InitializeWizard
обработчик события.
procedure CreateHelpButton (ParentForm : TSetupForm ;
X : integer ;
Y : integer ;
W : integer ;
H : integer) ;
var
HelpButton : TNewButton ;
begin
HelpButton := TNewButton.Create (ParentForm) ;
HelpButton.Left := X ;
HelpButton.Top := Y ;
HelpButton.Width := W ;
HelpButton.Height := H ;
HelpButton.Caption := '&Help' ;
HelpButton.OnClick := @HelpButtonOnClick ;
HelpButton.Parent := ParentForm ;
end;
procedure InitializeWizard () ;
begin
CreateHelpButton (
WizardForm, ScaleX (20), WizardForm.CancelButton.Top,
WizardForm.CancelButton.Width, WizardForm.CancelButton.Height) ;
end;
Просто для завершения списка:
procedure HelpButtonOnClick(Sender: TObject);
var
ResultCode: Integer;
begin
ExtractTemporaryFile('installer.chm');
if (FileExists(ExpandConstant('{tmp}\installer.chm'))) then
begin
ShellExec('', ExpandConstant('{tmp}\installer.chm'), '', ExpandConstant('{tmp}'), SW_SHOW, ewNoWait, ResultCode);
end;
end;