如何在基本 MSI 项目的 installshield 中关闭修复时正在运行的应用程序实例?
我想在我的设置的修复选项中关闭正在运行的应用程序实例......
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我想在我的设置的修复选项中关闭正在运行的应用程序实例......
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
这可以通过自定义操作来完成。没有预定义的支持,因此您需要编写自己的自定义代码。一个好的方法是将 WM_CLOSE 发送到主应用程序窗口并让它自行关闭。
要仅在修复期间运行此自定义操作,您可以尝试使用 重新安装 属性。
如果您想避免出现“文件正在使用”对话框,则需要在 InstallValidate 操作。在这种情况下,您不能使用 REINSTALL 属性,但可以使用此条件:
当您的包在维护模式(修改、修复或删除)下运行时,它的计算结果为 true。
This can be done through a custom action. There is no predefined support for it, so you will need to write your own custom code. A good approach is sending WM_CLOSE to the main application window and let it close itself.
To run this custom action only during repair, you can try conditioning it with REINSTALL property.
If you want to avoid the Files In Use dialog, you will need to run this custom action before InstallValidate action. In this case you cannot use REINSTALL property, but you can use this condition:
It evaluates to true when your package is running in maintenance mode (modify, repair or remove).