MSI安装程序未更新的使用中文件(Visual Studio安装程序项目) [英] In-use files not updated by MSI-installer (Visual Studio Installer project)
问题描述
我正在使用 Visual Studio安装程序项目扩展来构建适用于我的应用程序的MSI安装程序.但是,我的应用程序打算一直运行,如果用户安装我的软件的新版本时该应用程序处于打开状态,则打开的文件不会被覆盖,实际上几乎没有更新(尽管没有安装程序) -错误).
I'm using the Visual Studio Installer Projects extension to build the MSI-installer for my application. However, my application is meant to be running at all times, and if it's open when the user is installing a new version of my software, the open files are not overwritten, and very little to nothing is actually updated (although there are no installer-errors).
我发现,使用安装程序项目的自定义操作"运行关闭应用程序的脚本无济于事,因为在替换文件之前,没有一个操作被称为 .
I've found that using the installer project's "Custom Actions" to run a script that closes the application doesn't help, as none of the actions are called before the files are replaced.
是否有一种很好的方法来确保打开/锁定的文件在应该被覆盖之前 被终止?
Is there a good way to make sure the open/locked files gets terminated before the files are supposed to be overwritten?
推荐答案
这不是解决问题的方法,而是另一种解决方案.最后需要最少的工作.
This isn't a solution to the problem, but rather another solution; the one requiring the least work in the end.
我最终使用安装程序的"Visual Studio安装程序项目" 不是.相反,我查看了高级安装程序,该程序正常工作没有问题.这样的事情已考虑在内,自定义操作允许更多选项.
I ended up not using 'Visual Studio Installer Projects' for my installer. Instead I looked to Advanced Installer, which just works with no issues. Things like this is taken into account, and custom actions allow for more options.
如果您的项目是开源的,则可以向他们写有关免费开源专业人士的信息许可证,等于其专业"计划,通常为 $ 399 (一次性购买).
If your project is open source, you can write to them about a free open source "professional" license, equal to their "professional" plan, which is normally $399 (onetime purchase).
这篇关于MSI安装程序未更新的使用中文件(Visual Studio安装程序项目)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!