2013-02-21 2 views
1

Wix 3.0을 사용하는 설치 프로젝트를 계승했습니다 프로그래밍상의 이유로 VS2012로, 따라서 Wix 3.7로 전환해야합니다.Wix 3.0 프로젝트 (부트 스트 래퍼 포함)를 Wix 3.7에 포팅하는 방법

Wix 3.7에 대해 읽는 동안 3.7이 프로젝트 유형 "설치 프로젝트" 과 프로젝트 유형 "부트 스트 래퍼 프로젝트"를 제공한다는 것을 알았습니다.

첫 번째 질문은 다음과 같습니다. 설치 프로젝트를 이전과 같이 만들고 부트 스트 래퍼 프로젝트를 만들어 결합하거나 부트 스트 래퍼 프로젝트 만 만들면됩니까?

윅스 3.0에게 물건이 wixproj 파일에 위치했다 부트 스트 래퍼 사용 :

<ItemGroup> 
    <BootstrapperFile Include="Microsoft.Net.Framework.3.5.SP1"> 
    <ProductName>Microsoft .NET Framework 3.5 SP1</ProductName> 
    </BootstrapperFile> 
    <BootstrapperFile Include="Microsoft.Windows.Installer.3.1"> 
    <ProductName>Windows Installer 3.1</ProductName> 
    </BootstrapperFile> 
</ItemGroup> 

<Target Name="AfterBuild"> 
    <GenerateBootstrapper Condition=" '$(Platform)' == 'x86' " ApplicationName="$(ProductName)" BootstrapperItems="@(BootstrapperFile)" ComponentsLocation="HomeSite" CopyComponents="True" OutputPath="$(TargetDir)%(CultureGroup.OutputFolder)" Culture="%(CultureGroup.Identity)" FallbackCulture="en-us" Path="$(WindowsSDKPath)" /> 
    <GenerateBootstrapper Condition=" '$(Platform)' == 'x64' " ApplicationName="$(ProductName) (x64)" BootstrapperItems="@(BootstrapperFile)" ComponentsLocation="HomeSite" CopyComponents="True" OutputPath="$(TargetDir)%(CultureGroup.OutputFolder)" Culture="%(CultureGroup.Identity)" FallbackCulture="en-us" Path="$(WindowsSDKPath)" /> 
</Target> 

이 여전히 가능을? 여기에서 .Net 3.5SP1에서 .Net 4.5로 변경해야합니다.

누군가 나를 도울 수 있습니까?

답변

2

먼저 WiX Toolset 3.7을 사용하여 업그레이드하고 WiX 파일에서 wixcop을 실행하여 업그레이드 할 수 있습니다.


새 윅스 부트 스트 래퍼를 사용하려면

...

당신은 두 프로젝트 형식이 필요합니다. "설치"프로젝트는 .msi 파일을 만듭니다. "부트 스트 래퍼"프로젝트는 .exe 파일을 생성합니다.

설치 프로젝트에서 Visual Studio 부트 스트 래퍼 항목과 GenerateBootstrapper 작업을 제거하십시오. 부트 스트 래퍼의 체인에 해당하는 ExePackage 또는 PackageGroupRef 요소를 만듭니다. PackageGroup은 대략 Visual Studio Bootstrapper 패키지에 해당하지만 "구문"은 다릅니다. Visual Studio Bootstrapper 패키지를 다시 만들려면 C:\Program Files (x86)\Microsoft Visual Studio 8\SDK\v2.0\Bootstrapper\Packages 또는 이와 동등한 파일을 참조하십시오.

Microsoft .NET 프레임 워크의 경우 WixNetfxExtension 확장은 reference 일 수있는 패키지 그룹을 정의합니다.