我有一个安装应用程序的设置,我需要在成功安装后运行该应用程序。我曾经postinstall这样做过。
但它显示一个复选框,用户可以取消选中它。我需要在不询问的情况下运行该应用程序,因为它是一种需要在启动时运行的服务。如果用户取消选中它,则需要重新启动电脑才能启动。
因此,我可以使用Filename: "{app}\myapp.exe"该部分中没有任何标志的代码Run来启动应用程序,但问题是,它在安装后立即运行,而不是在单击完成按钮后运行。
第一个问题是我的应用程序有一个说明窗口。它在启动时出现,因此设置窗口位于后面。第二个问题是我的应用程序不允许终止,除非卸载,因为它需要在后台运行。设置正在等待处理结束。
在 inno setup 中单击完成按钮后有什么方法可以运行应用程序吗?
单击 Inno Setup 中的“完成”按钮后,根据自定义复选框简化“运行文件和程序”的答案,您可以使用如下代码:
[Code]
function NextButtonClick(CurPageID: Integer): Boolean;
var
ResultCode: Integer;
Path, Msg: string;
begin
if CurPageID = wpFinished then
begin
Path := ExpandConstant('{app}\MyProg.exe');
if ExecAsOriginalUser(Path, '', '', SW_SHOW, ewNoWait, ResultCode) then
begin
Log('Executed MyProg');
end
else
begin
Msg := 'Error executing MyProg - ' + SysErrorMessage(ResultCode);
MsgBox(Msg, mbError, MB_OK);
end;
end;
Result := True;
end;
Run Code Online (Sandbox Code Playgroud)
如果您想以提升的/管理员权限运行程序(如果安装程序完全使用它们),请替换ExecAsOriginalUser为。Exec
| 归档时间: |
|
| 查看次数: |
1668 次 |
| 最近记录: |