4

我试图用 Visual Studio 构建一个 WiX 补丁。很容易。我用 Visual Studio 构建,它构建。但是,当我尝试运行生成的MSI时,我被告知

无法打开此安装包。请与应用程序供应商联系以验证这是一个有效的 Windows Installer 程序包。

理想情况下,我会创建一个小得多的 msp 路径文件,但为了简单起见,我可以使用 MSI 文件。如何使用 Visual Studio 执行此操作,或者,我是否需要下拉到命令行并使用candle.exe、light.exe、torch.exe 和 pyro.exe?

WiX 代码如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Patch
          AllowRemoval="yes"
          Classification="Update"
          Comments="Some Patch for v 1.0.0"
          Description="Updates Some Software to v 1.0.1"
          DisplayName="Some software Patch 03/07/2011"
          Manufacturer="MyMfg"
          TargetProductName="SomeProduct">

        <Media Id="1000" Cabinet="Inspect.cab">
            <PatchBaseline Id="SomeBaseLine" />
        </Media>
        <PatchFamily
              Id="SomeFamily"
              Version="1.0.1.0"
              ProductCode="<GUID>"
              Supersede="yes">

            <ComponentRef Id="ComponentsToPatch" />
        </PatchFamily>
    </Patch>
</Wix>
4

1 回答 1

6

Votive没有补丁项目类型。WiX MSBuild 目标包括Torch任务但不包括Pyro任务,因此您可以使用 MSBuild 执行所有操作,但需要使用Exec来运行 Pyro。在 Visual Studio 和 MSBuild 目标中都有一个支持修补的开放功能请求。

于 2011-03-08T21:09:47.720 回答