【问题标题】:VS Setup Project: Uninstall other component on installVS 安装项目:在安装时卸载其他组件
【发布时间】:2008-10-13 12:13:33
【问题描述】:

我正在创建一个 Visual Studio 安装项目。我想从我的组件安装中卸载系统中的另一个组件。另一个组件是通过我自己使用 Visual Studio 创建的设置安装的。

目前,当我从组件的安装操作中调用卸载其他组件时,我收到错误代码:1618 (another MSI already running)

谁能建议我另一种方法来解决这个问题?

【问题讨论】:

  • 如果您需要答案,我会花大价钱...?

标签: visual-studio-2005 windows-installer setup-project


【解决方案1】:

如果您不需要实际运行其他组件的卸载,您可以使用自定义操作来删除您打算替换的文件/文件夹。

使用自定义操作将强制您执行卸载程序将为您执行的所有清理操作。

您是要替换某些东西,还是只是因为安装了完全不同的东西而试图卸载某些东西?

MSDN Custom Action Walkthrough

我还阅读了 Phil Wilson 的一些文章,它们对自定义操作很有帮助:
Phil Wilson on Custom Actions

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,需要多次安装才能一起运行,并且找不到递归运行 MsiExec 的方法。我使用的解决方案是将安装程序与一个脚本捆绑在一起,该脚本将运行 MsiExec 一次以安装/卸载旧软件包,然后再次运行新的安装程序。客户端必须运行脚本才能安装。

    如果你找到更好的方法,请告诉我。

    【讨论】:

      【解决方案3】:

      我认为您可以在安装程序启动时通过 shell 命令运行该程序的uninst.exe.....

      【讨论】:

        猜你喜欢
        • 2011-05-11
        • 2011-01-02
        • 2011-09-21
        • 2011-01-05
        • 2016-05-11
        • 2017-01-07
        • 2010-10-17
        • 1970-01-01
        • 2016-10-09
        相关资源
        最近更新 更多