使 Windows Installer 忽略正在运行的进程

发布于 2024-10-31 05:12:40 字数 201 浏览 1 评论 0原文

使用Installshield 2010和Basic MSI项目。

我有一个以前由我的安装程序安装的 exe。该 exe 需要在安装程序升级期间运行。有没有办法保证安装程序不会尝试关闭进程?基本上,我希望的行为是:如果文件不存在,请将其放下,否则忽略它。

我已将 exe 设为组件中的关键文件,并将其“从不覆盖”设置为 true。这应该给我我想要的行为吗?

Using Installshield 2010 and Basic MSI project.

I have an exe that was previously installed by my installer. That exe needs to be running during an installer upgrade. Is there a way to guarantee that the installer won't try shutdown the process? Basically, I would like the behavior to be : If file doesn't exist, lay it down, otherwise ignore it.

I have made the exe a key file in a component and set it 'Never Overwrite' to true. Should this give me my desired behavior ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧梦荧光笔 2024-11-07 05:12:40

未来的安装程序将使用 Never Overwrite 来确定该文件是否会被其他 MSI 软件包覆盖。基本上,应该为已安装的 EXE 设置此属性。

一个好的方法是使用文件搜索确定 EXE 是否存在。然后可以使用搜索属性来调节新组件。

Windows Installer 不会自动关闭应用程序,但它会显示一个 FilesInUse 对话框,向用户提供此选项。

Never Overwrite will be used by future installers to determine if the file will be overwritten or not by other MSI packages. Basically, this attribute should have been set for the installed EXE.

A good approach is to use a file search to determine if the EXE exists. The search property can then be used to condition the new component.

Windows Installer doesn't automatically close applications, but it does show a FilesInUse dialog which offers this option to the user.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文