我已经通过 Inno Setup 制作了一个安装程序,现在我需要在运行一些文件后重新启动计算机。
所以,我有代码:
....
[Files]
....
[Run]
Filename: firstfile
RESTART
Filename: secondfile
....
这可能吗?我找到了一个示例脚本github,但我不明白如何使用这个 DetectAndInstallPrerequisites 函数。如果有人可以建议或提供一些简单的例子,我将非常感激
我已经通过 Inno Setup 制作了一个安装程序,现在我需要在运行一些文件后重新启动计算机。
所以,我有代码:
....
[Files]
....
[Run]
Filename: firstfile
RESTART
Filename: secondfile
....
这可能吗?我找到了一个示例脚本github,但我不明白如何使用这个 DetectAndInstallPrerequisites 函数。如果有人可以建议或提供一些简单的例子,我将非常感激
查看CodePrepareToInstall.iss
Inno 中包含的示例脚本。它显示了如何安排重新启动并在之后自动恢复安装。(如果您的安装更复杂或提示用户进一步输入,您可能需要进行进一步更改或保存更多值。)
该示例中缺少的链接是您需要DetectAndInstallPrerequisites
通过使用来填充函数ExtractTemporaryFile
以检索适当的文件(因为它在[Files]
处理主要部分之前运行)并Exec(ExpandConstant('{tmp}\yourfile.exe'), ...)
实际运行文件。如果这是一个子安装程序,您可以检查其退出代码以确定是否确实需要重新启动,而不是无条件地请求重新启动。
请注意,此代码将在重新启动后再次执行,因此您还需要一些方法来检测子安装是否成功并跳过再次尝试运行它。通常这是通过尝试检测已安装子组件的版本来完成的。