从Bootstrapper软件包重用Product.xml和Package.xml

时间:2013-07-04 08:21:31

标签: wix bootstrapper burn wix3.7 prerequisites

Visual Studio安装和部署使用先决条件。 这些先决条件是带有预配置的Product.xml和Package.xml的Bootstrapper软件包。

我是否可以重复使用这些配置XML,或者在为WiX制作PackageGroup时是否需要重新配置?

SQLExpress2008R2 Bootstrapper包:

  • product.xml:包含相关产品并调用SQLExpressCheck.exe
  • package.xml:决定架构并具有安装SQL Server的默认参数

如果我无法在Burn中重用Product.xml和Package.xml,我应该使用WixProj文件中的BootstrapperFile吗?

2 个答案:

答案 0 :(得分:1)

不幸的是,您必须创建自己的PackageGroups和ExePackages。虽然可以从Visual Studio Bootstrapper软件包中复制某些信息,但您应该查找先决条件的安装文档。有时真正的安装说明隐藏在发行说明甚至是MSDN博客中。您可能需要谷歌“无声”或“无人看管”。


GenerateBootstrapper添加到.wixproj文件中没有任何好处,因为.wixproj文件不是为了导入常见的Microsoft目标而设计的。

答案 1 :(得分:-1)

我决定在我的情况下,而不是编写Burn PackageGroups,在wixproj中使用以下设置。

我有7个带有复杂product.xml和package.xml的Bootstrapper软件包,重新创建Burn软件包组是没有意义的。

    <ItemGroup>
    <BootstrapperFile Include=".NETFramework,Version=v4.0">
      <ProductName>Microsoft .NET Framework 4 (x86 und x64)</ProductName>
    </BootstrapperFile>
  </ItemGroup>
  <PropertyGroup>
  <WindowsSDKBootstrapperPath>$(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GenericBootstrapper\4.0@Path)</WindowsSDKBootstrapperPath>
  </PropertyGroup>
  <Target Name="BeforeBuild">
  </Target>
  <Target Name="AfterBuild">
    <GenerateBootstrapper ApplicationFile="$(TargetFileName)" ApplicationName="Rodenstock Consulting" ApplicationRequiresElevation="True" BootstrapperItems="@(BootstrapperFile)" ComponentsLocation="Relative" CopyComponents="True" OutputPath="$(OutputPath)" Path="$(WindowsSDKBootstrapperPath)" />
  </Target>