Bootstrapper先决条件订购

fry*_*bob 4 .net installation bootstrapper

在MSBuild中使用通用引导程序时,如何确定先决条件的安装顺序?

例如,给定:

<Project ToolsVersion="3.5" xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>
  <ItemGroup>
    <BootstrapperFile Include='A' />
    <BootstrapperFile Include='B' />
    <BootstrapperFile Include='C' />
    <BootstrapperFile Include='D' />
  </ItemGroup>

  <Target Name='MySetup'>
    <GenerateBootstrapper
      Path='C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper'
      ApplicationName='My Program'
      ApplicationFile='MyProgram.msi'
      BootstrapperItems='@(BootstrapperFile)'
      Culture='en'
      CopyComponents='true'
      ComponentsLocation='HomeSite'
      OutputPath='.\' />
  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

A,B,C和D的安装顺序是什么?我如何控制该订单?

fry*_*bob 6

看起来我可以在产品清单中指定DependsOnProduct标签:

<Product ProductCode="A">
  <PackageFiles>...</PackageFiles>
  <RelatedProducts>
    <DependsOnProduct Code="B" />
  </RelatedProducts>
  ...
</Product>
Run Code Online (Sandbox Code Playgroud)

这应该导致B之前安装A.

http://msdn.microsoft.com/en-us/library/ms229456.aspx