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

Ara*_*nid 6 install inno-setup restart

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

所以,我有代码:

....
[Files]
....
[Run]
Filename: firstfile
RESTART
Filename: secondfile
....
Run Code Online (Sandbox Code Playgroud)

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

Mir*_*ral 5

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

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

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