在多用户环境中更新每个应用程序的机器实例
Update per machine instance of application in multiuser enviroment
如何 installer/windows/wix 处理以下情况,即假设不止一个用户正在使用每台机器使用选项安装的程序实例的机器上工作。然后其中一个用户继续升级应用程序。
安装是如何进行的以及如何在其他用户配置文件上进行处理?
是否必须对 WiX 项目进行任何其他更改才能允许安装程序进行此类更新?
我检查了该程序的实例未在其他用户个人资料上关闭,用户仍然可以使用该程序。
如果这是 per-machine 产品安装,则安装的产品只有一个实例,因此任何具有适当权限的用户都可以选择升级它。可能有针对不同用户的应用程序 运行 的多个副本,但这与更新无关,因为仍然只有一个产品要更新。实际执行更新的人拥有当前桌面的交互视图,因此他们会看到任何 UI 通知 - 其他用户不会。
多用户的行为取决于 MSI 设计和应用程序本身。例如,如果 MSI 安装一个数据文件的模板副本,然后应用将其复制并修改到每个用户配置文件位置,则不涉及 MSI 升级,因为它不会替换由应用程序。
如果您指的是应用程序的多个副本 运行,如果更新不影响正在使用的文件,您将不会看到任何问题,所以是的,用户可以继续工作.它是动态的,取决于文件替换规则,如果它们正在使用等等。
在某些情况下,Windows 可以保留应用程序 运行,即使它正在被卸载或替换。它制作二进制文件的私有副本,这些副本将在下次重新启动或程序完成时删除。通常无法预测会发生什么。
不幸的是,您的问题比较含糊,所以这个答案也可能含糊。如果你有一个特定的场景,并且你说你的更新是补丁还是主要升级,并且你也解释了你所指的用户配置文件,那么答案可以更具体。
如何 installer/windows/wix 处理以下情况,即假设不止一个用户正在使用每台机器使用选项安装的程序实例的机器上工作。然后其中一个用户继续升级应用程序。
安装是如何进行的以及如何在其他用户配置文件上进行处理? 是否必须对 WiX 项目进行任何其他更改才能允许安装程序进行此类更新?
我检查了该程序的实例未在其他用户个人资料上关闭,用户仍然可以使用该程序。
如果这是 per-machine 产品安装,则安装的产品只有一个实例,因此任何具有适当权限的用户都可以选择升级它。可能有针对不同用户的应用程序 运行 的多个副本,但这与更新无关,因为仍然只有一个产品要更新。实际执行更新的人拥有当前桌面的交互视图,因此他们会看到任何 UI 通知 - 其他用户不会。
多用户的行为取决于 MSI 设计和应用程序本身。例如,如果 MSI 安装一个数据文件的模板副本,然后应用将其复制并修改到每个用户配置文件位置,则不涉及 MSI 升级,因为它不会替换由应用程序。
如果您指的是应用程序的多个副本 运行,如果更新不影响正在使用的文件,您将不会看到任何问题,所以是的,用户可以继续工作.它是动态的,取决于文件替换规则,如果它们正在使用等等。
在某些情况下,Windows 可以保留应用程序 运行,即使它正在被卸载或替换。它制作二进制文件的私有副本,这些副本将在下次重新启动或程序完成时删除。通常无法预测会发生什么。
不幸的是,您的问题比较含糊,所以这个答案也可能含糊。如果你有一个特定的场景,并且你说你的更新是补丁还是主要升级,并且你也解释了你所指的用户配置文件,那么答案可以更具体。