【问题标题】:Installshield: uninstall does not workInstallshield:卸载不起作用
【发布时间】:2015-04-29 05:59:19
【问题描述】:

我使用 Installshield 2011 创建了一个安装程序。我可以用它安装软件,也可以从“程序和功能”界面卸载。

但是如果应用程序已经安装并且我再次单击安装程序,它会显示屏幕说明它将卸载并完成卸载。但卸载实际上并没有发生。

我为“删除”对话框设置了“删除所有”事件,在“删除”表中,我列出了安装模式 2 列出的所有需要​​卸载的文件。

不确定是什么问题...尤其是因为我可以从“程序和功能”中正确卸载。

有什么建议/提示吗?

【问题讨论】:

  • 您使用的是 Basic MSI 还是 Installscript MSI?
  • @SteinÅsmul:我正在使用基本 MSI
  • 我不相信您使用的是基本 MSI。它可能是一个 Installscript MSI 文件——处理这些文件对于调试来说非常糟糕,而且通常会出现很多问题。
  • @SteinÅsmul:在工具栏上,它显示“基本 MSI”。在“项目设置”-> 类型下,它显示基本 MSI。但是,我确实看到了一些正在使用的脚本。

标签: windows-installer installshield uninstallation installshield-2011 msi-gui


【解决方案1】:

在试图对此进行过多理论化之前,制作一个适当的、详细的日志文件很有用。替换路径以符合您的要求:

   msiexec.exe /x "C:\Test.msi" /L*V! "C:\msilog.log"

命令行参数说明:

/x = run uninstallation sequence
/L*V! "C:\Temp\msilog.log"= verbose logging, flush directly to log file without buffer

您是否真的对该删除对话框进行了任何修改,还是它是标准的?为什么要将文件添加到 RemoveFile 表中?还是那是自动发生的?通常不需要将文件添加到 RemoveFile 表,除非它们是由您的应用程序生成的并且您希望在卸载时将它们删除(通常在用户配置文件中)。

话虽如此,我几天前刚刚回答了一个关于在静默模式和交互模式下运行卸载的区别的问题。请阅读以下答案(及其相关问题):Uninstall from Control Panel is different from Remove from .msi

更新:

【讨论】:

    【解决方案2】:

    我想到了一些调试建议:

    1. 尝试创建一个新的 Basic MSI 项目并在 Installshield 中手动比较对话框中的详细信息。为您的新项目添加一些测试文件,并确保它以所有方式卸载(尤其是不适用于您的主要设置的方式)。

    2. 如果没有看到任何明显的内容,或者您​​想要更有效的比较,请使用 Wix 的 dark.exe 文件将您编译的 MSI 反编译为您的原始项目和新项目的 Wix XML 格式。然后找到对话框的 Wix XML 并检查设置。

    版本控制您的安装源!当出现这样的问题时,您有更好的调试机会 - 包括仅恢复整个设置几个修订版并重新执行旧源中缺少的内容.

    如果您可以使新设置正常工作而旧设置不配合,则将所有组件从旧设置迁移到新设置并不是那么复杂。我这样做是为了使用“导出到项目”选项从 Installscript MSI 迁移到基本 MSI,方法是右键单击每个组件(我相信这就是选项所在的位置)。我只花了几个小时就完成了一个大型设置。然后它会再花几个小时来正确验证所有自定义操作。

    记录在案:将 Wix 与基于文本的源文件一起使用会使调试变得更加容易,并且强烈推荐Windows Installer and the creation of WiX。一旦你习惯了它,你就可以用商业工具来匹配创建安装程序的速度。

    Wix 的详细信息,包括快速入门建议MSI vs nuget packages: which are is better for continuous delivery?

    有关安装程序的更多帮助,请查看:http://www.installsite.org/

    【讨论】:

      猜你喜欢
      • 2012-07-10
      • 2012-02-12
      • 2013-12-10
      • 1970-01-01
      • 2012-05-10
      • 2012-01-27
      • 2011-02-24
      • 2013-03-10
      • 2012-05-29
      相关资源
      最近更新 更多