3

我创建了一个 wix 构建,它执行以下操作 1. 将文件安装在临时位置。2. 然后我调用自定义操作将文件复制到不同的位置,并对一些配置文件进行消息传递。3. 向用户显示安装完成的消息。4. 然后退出 MSI。

PROBLEM: The reference to the MSI exists in control panel add remove program.

如何从添加删除程序中删除项目的引用?是否可以在同一个 WIX 版本中?实现它的替代方法是什么?

谢谢,米

4

1 回答 1

8

假设您想阻止您的应用程序显示在控制面板的添加或删除程序列表中。

然后你需要将属性设置ARPSYSTEMCOMPONENT为1。

<Property Id="ARPSYSTEMCOMPONENT" Value="1" />

阅读有关ARPSYSTEMCOMPONENT 的更多信息

而且,如果您希望它显示在添加或删除程序中,但删除或修改禁用的功能,请使用 ARP ENTRY 属性。

<Property Id="ARPNOMODIFY" Value="1" />
<Property Id="ARPNOREPAIR" Value="1" />
<Property Id="ARPNOREMOVE" Value="1" />

参考更多信息: ARP ENTRY

如果您不希望您的程序也被卸载,msiexec您可以添加条件,例如

<Condition Message="Uninstall is not supported">REINSTALL or Not Installed</Condition>.

卸载使用msiexec.exe /x会弹出说不支持卸载并退出。

于 2013-09-16T11:15:10.667 回答