1

添加/删除程序(或程序和功能)控制面板小程序通常允许卸载或修复程序。

对于非 MSI 安装,当用户单击“更改”或“卸载”按钮时,很容易定义应该发生的情况。只需在注册表 ( HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<AppName>) 中设置适当的键。

我的问题是如果使用 MSI 安装,如何使“更改”、“修复”和“卸载”按钮按我的方式工作(例如启动自定义程序)?

4

2 回答 2

2

如果您使用的是 MSI,请使用 MSI 方式。

如果您想做一些不同的事情,请不要使用 MSI。您会给自己带来很多很多的麻烦,并首先失去使用 MSI 的好处。

如果您需要在卸载过程中运行自己的 EXE,请参阅我对这个问题的回答并简单地否定条件。

安装 MSI 时您必须记住的一件事是用户界面是可选的,您不能指望它在安装或卸载期间显示。用户可能会删除应用程序MSIEXEC /X而不是单击 ARP 中的按钮

如果您真的想“按照自己的方式做”,那么我建议为 MSI 创建一个引导程序,让 MSI 安装隐藏在 Add/Remove Programs中,然后使用注册表项为您的自定义安装程序手动添加一个 ARP 条目您已在上面指定。

于 2009-02-19T02:44:17.313 回答
0

在 MSI 的说法中,这将启动自定义操作(可以是 .EXE)。Windows 安装程序的学习曲线非常陡峭......通常试图让它“按我的方式工作”是很多挫折的捷径。

如果你走这条路,你应该看看 Wix.sourceforge.net。它有一个非常活跃的用户社区,对 Windows 安装程序非常了解。

于 2009-02-18T23:09:04.367 回答