Inno setup 单击Inno Setup中的Finish按钮后,根据自定义复选框运行文件和程序

Inno setup 单击Inno Setup中的Finish按钮后,根据自定义复选框运行文件和程序,inno-setup,pascalscript,Inno Setup,Pascalscript,我在Inno安装程序的完成页面中创建了一些自定义复选框。 例如,启动应用程序、打开文本文件等 当用户单击finish按钮时,我需要选中这些复选框并执行所需的任何操作。在Inno安装程序中如何执行此操作 代码如下: 过程CurPageChanged(CurPageID:Integer); 开始 如果CurPageID=wpFinished,则 开始 启动:=TNewCheckBox.Create(WizardForm); Launch.Parent:=向导窗体; Launch.Left:=Wiza

我在Inno安装程序的完成页面中创建了一些自定义复选框。 例如,启动应用程序、打开文本文件等

当用户单击finish按钮时,我需要选中这些复选框并执行所需的任何操作。在Inno安装程序中如何执行此操作

代码如下:

过程CurPageChanged(CurPageID:Integer);
开始
如果CurPageID=wpFinished,则
开始
启动:=TNewCheckBox.Create(WizardForm);
Launch.Parent:=向导窗体;
Launch.Left:=WizardForm.ClientWidth-350;
Launch.Top:=WizardForm.CancelButton.Top;
发射宽度:=120;
Launch.Height:=WizardForm.CancelButton.Height;
启动。标题:=“启动”;
结束;
结束;

在中,测试您的复选框是否已选中,并相应地执行操作

函数NextButtonClick(CurPageID:Integer):布尔;
变量
结果代码:整数;
路径:字符串;
消息:字符串;
开始
如果CurPageID=wpFinished,则
开始
如果启动,那么检查
开始
路径:=ExpandConstant('{app}\MyProg.exe');
如果ExecAsOriginalUser(路径,,'',SW_SHOW,ewNoWait,ResultCode),则
开始
日志(“已执行的MyProg”);
结束
其他的
开始
消息:='执行MyProg时出错:'+SysErrorMessage(ResultCode);
MsgBox(消息,mbError,MB_OK);
结束;
结束;
结束;
结果:=真;
结束;

只需选中复选框状态:

if (Launch.Checked = True) then
begin
// checkbox is checked
end
else
begin
// Checkbox is unchecked
end;
最好使用函数NextButtonClick(CurPageID:Integer):布尔 但是,在这种情况下,您需要将复选框设置为全局变量(以便可以访问)