ZVSRus
Участник
Как в данном примере запустить приложение через кнопку. Но при этом финишная страница не должна закрываться.
[Setup]
AppName=Name
AppVerName=Name
DefaultDirName={pf}\Name
compression=none
[Setup]
AppName=Name
AppVerName=Name
DefaultDirName={pf}\Name
compression=none
Код:
var
PuskButton: TNewButton;
PuskCheck: TNewCheckBox;
////////////////////////////////////////
function Pusk2Check: Boolean; //
begin //
Result:= PuskCheck.Checked; //
end; //
////////////////////////////////////////
procedure PuskButtonClick(Sender: TObject); forward;
procedure PuskButtonClick(Sender: TObject);
begin
end;
procedure InitializeWizard();
begin
{ PuskButton }
PuskButton := TNewButton.Create(WizardForm);
with PuskButton do
begin
Parent := WizardForm.FinishedPage;
Left := ScaleX(176);
Top := ScaleY(286);
Width := ScaleX(75);
Height := ScaleY(25);
Caption := 'Запуск';
OnClick := @PuskButtonClick;
end;
{ PuskCheck }
PuskCheck := TNewCheckBox.Create(WizardForm);
with PuskCheck do
begin
Parent := WizardForm.FinishedPage;
Left := ScaleX(280);
Top := ScaleY(290);
Width := ScaleX(150);
Height := ScaleY(17);
Caption := 'Ассоциация файлов';
end;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
begin
/////
if CurStep = ssInstall then /// перед устанновкой
begin
end;
///////
if CurStep = ssPostInstall then /// после установки C:\Program Files\XnViewMP\Associate files with XnViewMP.exe
begin
end;
//////
if CurStep = ssDone then if Pusk2Check then /// то что тебе надо
begin
Exec(ExpandConstant('{sys}\calc.exe'), '', '', SW_SHOW, ewNoWait, ResultCode); /// запустим калькулятор
// Exec(ExpandConstant('C:\Program Files\XnViewMP\Associate files with XnViewMP.exe'), '', '', SW_SHOW, ewNoWait, ResultCode);
// другой пример Exec(ExpandConstant('{src}\outer\DirectX\DXSETUP.exe'), '/silent', ExpandConstant('{src}\outer\DirectX'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
//////////////////////////////// расположение файла ///////////////////// параметры ////////// рабочая папка ///////////////////// флаги ////// (другие - SW_HIDE, ewNoWait)
end;
end;
[ISFormDesigner]
WizardForm=FF0A005457495A415244464F524D0030102B02000054504630F10B5457697A617264466F726D0A57697A617264466F726D0C436C69656E744865696768740368010B436C69656E74576964746803F1010C4578706C696369744C65667402000B4578706C69636974546F7002000D4578706C6963697457696474680301020E4578706C69636974486569676874038E010D506978656C73506572496E636802600A54657874486569676874020D00F10C544E65774E6F7465626F6F6B0D4F757465724E6F7465626F6F6B00F110544E65774E6F7465626F6F6B506167650B57656C636F6D65506167650D4578706C69636974576964746803F1010E4578706C696369744865696768740339010000F110544E65774E6F7465626F6F6B506167650C46696E6973686564506167650D4578706C69636974576964746803F1010E4578706C69636974486569676874033901000A544E6577427574746F6E0A5075736B427574746F6E044C65667403B00003546F70031E01055769647468024B0648656967687402190743617074696F6E1206000000170430043F04430441043A04085461624F726465720205074F6E436C69636B070F5075736B427574746F6E436C69636B00000C544E6577436865636B426F78095075736B436865636B044C65667403180103546F700322010557696474680396000648656967687402110743617074696F6E1425000000D097D0B0D0BFD183D181D182D0B8D182D18C20D0BFD180D0BED0B3D180D0B0D0BCD0BCD183085461624F7264657202060000000000