Bootstrapper 전제 조건 주문
-
19-08-2019 - |
문제
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>
A, B, C 및 D가 설치되는 순서는 얼마입니까? 그 순서를 어떻게 제어합니까?
해결책
제품과 함께 매니페스트를 지정할 수있는 것 같습니다. DependsOnProduct
꼬리표:
<Product ProductCode="A">
<PackageFiles>...</PackageFiles>
<RelatedProducts>
<DependsOnProduct Code="B" />
</RelatedProducts>
...
</Product>
결과가 발생해야합니다 B
전에 설치 중입니다 A
.
다른 팁
당신은 이미 자신의 질문에 대답 한 것 같습니다. 귀하의 답변에서 알 수 있듯이 Pacakges 자체에 의해 결정된 제품의 순서. MSI는 항상 마지막으로 설치됩니다.
패키지는 (VS2008의 경우)에서 찾을 수 있습니다.
C : Program Files Microsoft SDKS Windows V6.0A Bootstrapper 패키지
Eeach 패키지에는 전제 조건이 설정된 자체 부트 스트랩 매니페스트 파일이 포함되어 있습니다. Microsoft의 제공된 패키지에 대해서는 이에 대해 걱정할 필요가 없습니다. 사전 반품을 위해 자신만의 패키지를 만든 경우에만 관심을 가져야합니다.
제휴하지 않습니다 StackOverflow