Wix卸载快捷方式不会完全删除应用程序

时间:2018-03-23 12:44:47

标签: c# installation wix windows-installer installer

我有一个wix安装程序,可以复制应用程序dll并安装Windows服务。它还在程序菜单中创建快捷方式(一个用于app,另一个用于卸载过程)。 卸载快捷方式如下所示:

 <Shortcut Id="UninstallProduct"
           Name="Application"
           Target="[SystemFolder]msiexec.exe"
           Arguments="/x [ProductCode]" />

应用程序安装正确,但当我尝试通过快捷方式卸载它时出错了。正在删除安装程序创建的所有文件夹和文件,但是当我进入添加/删除程序菜单时,我会看到我的应用程序的条目(需要从上下文菜单中删除它 - 它完全删除了应用程序)。

unistall快捷方式有什么问题?如何强制它从系统中删除应用程序?

所有guid(对于产品,组件)都是这样创建的:Guid="*"

1 个答案:

答案 0 :(得分:0)

我认为你已经有了答案,但我会检查其他人提到的事情:

  1. 检查日志文件以进行卸载。我不知道日志文件是自动生成的 - 除非这是Windows 10中的新功能。
    • To make a log file for your uninstall, you can follow this procedure from installsite.org(请参阅&#34; 全球所有机器上的设置 &#34;。
    • 要查找特定日志,请先启动卸载并让其运行,然后打开临时文件夹(按住 Windows键,点按 R < / kbd>,键入%tmp%Add / Remove并点击 Enter ),现在按修改日期对文件进行排序,以获得列表顶部的最新日志。打开它。它会有一个随机名称。
  2. 如果您认为卸载后在Add / Remove中列出了您的产品,则卸载无法正常完成。存在一些可能性。
    • 您的卸载可能有自定义操作,可以自行删除内容,如果他们没有与之关联的回滚自定义操作,则在回滚失败后,文件可能会丢失。
    • 重新打开toLocalIterator小程序, PhilDW 建议将告诉您卸载是否实际失败。
    • 您是否在真正的测试盒上或者这是您的开发盒?在开发过程中,最终在同一个盒子上安装了同一产品的多个版本并不罕见 - 尤其是当您自动 - 生成您的产品guid,并且您的主要升级配置尚未正确设置(尚未)。测试虚拟测试以确保。
  3. 总体建议 失去整个卸载快捷方式! 自21世纪初以来,此类快捷方式一直不受欢迎,我相信它们仍然是微软的徽标违规行为。事实上,我相信某些类型的快捷方式实际上是由系统本身自动隐藏的。我前一段时间写了一个答案: Wix Uninstall Shortcut not working (请快速阅读)。