【问题标题】:Running devenve.exe /setup after uninstall in Wix在 Wix 中卸载后运行 devenv.exe /setup
【发布时间】:2011-07-07 08:24:28
【问题描述】:

我正在为 MVVM Light 安装安装程序(MSI、Wix),但遇到了问题。我需要在安装和卸载时运行 devenv.exe /setup 以将模板添加/删除到新项目菜单。虽然我们在安装时确定了语法,但我们无法找到在卸载时运行它的正确语法。

这就是我们所拥有的:

<InstallExecuteSequence>
    <Custom Action='UpdateVS2010Templates'
            After='InstallFiles'>VS2010EXISTS</Custom>

    <Custom Action='UpdateVS2010TemplatesUninstall'
            After='RemoveFiles'>REMOVE = "All"</Custom>
</InstallExecuteSequence>

<CustomAction Id="UpdateVS2010Templates"
                Impersonate="no"
                Execute="deferred"
                Directory="INSTALLLOCATION"
                ExeCommand='"[VS10INSTALL]\Common7\IDE\DEVENV.EXE" /SETUP'
                Return='ignore' >
</CustomAction>

<CustomAction Id="UpdateVS2010TemplatesUninstall"
                Impersonate="no"
                Execute="deferred"
                Directory="INSTALLLOCATION"
                ExeCommand='"[VS10INSTALL]\Common7\IDE\DEVENV.EXE" /SETUP'
                Return='ignore' >
</CustomAction>

谁能指出正确的语法是什么?

谢谢! 洛朗

【问题讨论】:

  • 更多信息:我尝试执行一个虚拟的自定义操作(MessageBox.Show 几乎),它适用于安装,但不适用于卸载。所以实际上没有执行的是自定义操作,而不是设置命令本身。

标签: wix wix3.5


【解决方案1】:

这是 WiX 附带的功能。将所有创作和您的自定义 RegistrySearch 替换为:

<CustomActionRef Id="VS2010Setup" />

【讨论】:

  • 干得好,先生,这行得通。在简化我的设置过程中:) 谢谢!!
【解决方案2】:

卸载文件后是否尝试过 devenv /installvstemplates?
http://msdn.microsoft.com/en-us/library/xee0c8y7.aspx

【讨论】:

    【解决方案3】:

    有没有可能是case sensitivity issue

    按照 Rob 的建议,尝试使用 "ALL" 而不是 "All"REMOVE ~= "ALL"

    【讨论】:

      猜你喜欢
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-11
      • 2019-03-02
      • 2021-06-29
      • 2019-03-23
      • 2019-06-14
      相关资源
      最近更新 更多