首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iexpress重新启动的条件是什么?

iexpress重新启动的条件是什么?
EN

Stack Overflow用户
提问于 2015-10-01 07:18:38
回答 1查看 449关注 0票数 0

我使用iexpress.exe快速创建基于批处理文件的简单安装程序。IExpress向导提供“仅在需要时重新启动”选项。

但是,如何从批处理文件中判断需要重新启动呢?我尝试使用退出代码3016,就像在windows更新中一样。但这不管用。

顺便说一句:我用

代码语言:javascript
复制
cmd.exe /c my.bat

My.bat的内容:

代码语言:javascript
复制
exit /b 3010
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-02 06:38:24

我试图让IExpress识别返回代码。我认为你想要的是3010,而不是3016。该命令还将是:

代码语言:javascript
复制
exit 3010

没有/b - we想从cmd返回退出代码,而不是设置errorlevel

但是它没有起作用,这让我怀疑IExpress是否会费心去检查这个问题。

总之,我和Process做了一点调查。安装过程运行后,IExpress立即检查PendingFileRenameOperations注册表值,以查看文件是否已被标记为重命名(或删除)。如果有,它确定需要重新启动,并采取您在SED文件中指定的操作(例如提示用户重新启动;或者只是重新启动;或者没有)。

如果您不熟悉它,PendingFileRenameOperations注册表值是在下一个系统启动时要移动或删除的文件列表。

您可以使用系统内件MoveFile来模拟这些计划中的下一个启动重命名。将movefile.exe添加到IExpress存档中,并在批处理文件中添加如下行:

代码语言:javascript
复制
movefile.exe -accepteula foo bar

实际的文件名并不重要--只需使用您知道肯定不存在的文件。(只要您没有更改批处理文件中的目录,它仍将是一个文件,例如,%temp%\IXP000.TMP。)

请注意,为此您需要运行提升(作为管理员运行)。

在这里工作得很好。每次运行后都会弹出IExpress,提示用户重新启动。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32881616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档