【发布时间】:2015-10-10 20:51:08
【问题描述】:
您好,我已经看到有关此主题的其他问题,但我尝试的任何方法似乎都不起作用。 在卸载我的产品时,我在日志文件中收到许多消息,如下所示: 不允许卸载组件:{895A2232-90E3-417B-AF3D-A4F5A8D1C225},因为存在另一个客户端
这篇文章... Wix does not remove service and files on uninstall ...提示我运行 MsiInv,它记录了几次:'Component x has no parent product'
这篇文章:http://www.itninja.com/question/disallowing-uninstallation-of-component-xxx 提示我查找并删除孤立条目...我什至尝试过运行 AVG 注册表清理程序。
但是,卸载时仍然没有删除这些文件。所以我一直在通过卸载测试上述解决方案(例如删除孤立的注册表项),然后手动删除文件,然后更新产品版本并重新安装。
相关代码sn-ps:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*"
Name="My Product Name"
Language="1033"
Version="1.0.118.0"
Manufacturer="My Company Name"
UpgradeCode="DEA53C73-EE29-4D5E-A3FF-0A09D0F50AF3">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<!--<UIRef Id="WixUI_Minimal" />-->
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<!-- Force administrator-->
<Property Id="MSIUSEREALADMINDETECTION" Value="1" />
<Feature Id="ProductFeature" Title="My Installer Name" Level="1">
<ComponentGroupRef Id="ProductComponents" />
</Feature>
...
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="CMP_INSTALL_FOLDER" Guid="DA711C12-A960-421F-A6A9-5ECF0DEEE2BC" Permanent ="no">
<RemoveFolder Id='RemovInstallFolder' Directory='INSTALLFOLDER' On='uninstall' />
<RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]\InstallFolder' Type='string' Value='' KeyPath='yes' />
</Component>
<Component Id="exampleComponent"
Guid="A0AFBE29-6962-4491-9D2F-D08E0B31C6BA" Permanent ="no">
<File Id="exampleComponentName"
Source="exampleSource"
KeyPath="yes" />
</Component>
</ComponentGroup>
【问题讨论】:
-
你在哪里测试?在干净的机器上(应用了新映像或检查点?)还是在已经存在很长时间的开发机器上?
标签: wix