0

我看过这个问题,但它有所不同。

我需要更改MsiRMFilesInUse对话框的消息。

当前消息是“不要关闭应用程序。(需要重新启动。)”

我需要将其更改为“不要关闭应用程序。(应用程序可能无法正常工作)”。

该消息在应用程序打开时出现,并且用户尝试卸载该应用程序。

唯一(但很大)的限制是在 Visual Studio 2010 安装项目中进行。(不允许使用 Installshield/Wix)。

我查看了自定义操作,但无法弄清楚如何更改消息。

另一种方法是创建一个自定义对话框,但是我无法以某种方式更改对话框。新对话框也有一组非常有限的控件。

4

1 回答 1

1

每个MsiRMFilesInUse 对话框 (Windows)

MsiRMFilesInUse 对话框可用于显示当前正在运行的文件的进程列表,这些文件需要被安装覆盖或删除。用户可以选择“自动关闭应用程序并重新启动它们”或“不关闭应用程序。(需要重新启动。)”如果用户选择“自动关闭应用程序并重新启动它们”选项,按钮控制可以在此对话框上创建发布 RMShutdownAndRestart 控制事件,并且重新启动管理器可以关闭应用程序并在安装结束时重新启动它们。这可以消除或减少重新启动计算机的需要。有关详细信息,请参阅系统重新启动。

请注意“可以创作”这个词的大量使用。之所以这样写,是因为透视图是 Windows Installer SDK(Windows 平台)。InstallShield (Basic MSI) 和 WiX (UI Extension) 均创建此表。Visual Studio 部署项目不会,因为 Microsoft (DevDiv) 从未努力支持它。你不能修改不存在的东西。

现在,如果您是 Windows Installer 专家(我怀疑您甚至不会发布这个问题),那么您可以做一些事情。您可以编写构建后命令来修改构建的 MSI 以执行 SQL 更新和/或应用转换以在 VS 完成构建后将自定义创建的对话框注入到您的 MSI 中。

我一直在这条路上,我知道该怎么做。我也知道它会适得其反,因为您会发现自己经常这样做以弥补该工具的缺点。至此,您了解为什么需要 WiX / InstallShield 并继续前进。

郑重声明,我曾经辞掉了一份薪水很高的工作,因为 VDPROJ 是所有开发经理都允许的。几年后,当他们终于意识到他们不知道他们在说什么时,我也回来了更多的 $$$$。

祝你好运。

于 2013-01-17T13:37:55.230 回答