Inno设置:在设置过程中重启

时间:2013-11-03 07:46:22

标签: install inno-setup restart

我通过Inno Setup安装了一个安装程序,现在我需要在运行一些文件后重新启动计算机。

所以,我有代码:

....
[Files]
....
[Run]
Filename: firstfile
RESTART
Filename: secondfile
....

这可能吗?我找到了一个示例脚本github,但我无法理解如何使用这个DetectAndInstallPrerequisites函数。 如果有人可以提供建议或提供一些简单的例子,我将非常感激

1 个答案:

答案 0 :(得分:5)

查看Inno附带的CodePrepareToInstall.iss示例脚本。它显示了如何安排重新启动并在之后自动恢复安装。 (如果安装更复杂或提示进一步用户输入,您可能需要进行进一步更改或保存更多值。)

该示例中缺少的链接是您需要使用DetectAndInstallPrerequisites填写ExtractTemporaryFile函数来检索相应的文件(因为它在处理主[Files]部分之前运行)和Exec(ExpandConstant('{tmp}\yourfile.exe'), ...)实际运行该文件。如果这是一个子安装程序,您可以检查其退出代码以确定是否实际需要重新启动,而不是无条件请求重新启动。

请注意,此代码将在重新启动后再次执行,因此您还需要某种方法来检测子安装是否成功并跳过尝试再次运行它。通常,这是通过尝试检测已安装的子组件的版本来完成的。