SEBWIN-300: Implemented basic setup bundle.

This commit is contained in:
dbuechel 2019-08-06 11:56:22 +02:00
parent 68f3f352fe
commit 1581b41aa3
5 changed files with 126 additions and 0 deletions

View file

@ -70,6 +70,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SafeExamBrowser.ResetUtilit
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Setup", "Setup\Setup.wixproj", "{0E14D163-557E-469E-9112-96936AF43A7B}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SetupBundle", "SetupBundle\SetupBundle.wixproj", "{95B68CBF-C483-4824-BB39-663E840519A0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -299,6 +301,11 @@ Global
{0E14D163-557E-469E-9112-96936AF43A7B}.Release|Any CPU.ActiveCfg = Release|x86
{0E14D163-557E-469E-9112-96936AF43A7B}.Release|x86.ActiveCfg = Release|x86
{0E14D163-557E-469E-9112-96936AF43A7B}.Release|x86.Build.0 = Release|x86
{95B68CBF-C483-4824-BB39-663E840519A0}.Debug|Any CPU.ActiveCfg = Debug|x86
{95B68CBF-C483-4824-BB39-663E840519A0}.Debug|x86.ActiveCfg = Debug|x86
{95B68CBF-C483-4824-BB39-663E840519A0}.Release|Any CPU.ActiveCfg = Release|x86
{95B68CBF-C483-4824-BB39-663E840519A0}.Release|x86.ActiveCfg = Release|x86
{95B68CBF-C483-4824-BB39-663E840519A0}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

14
SetupBundle/Bundle.wxs Normal file
View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle Name="!(bind.packageName.Setup)" Version="!(bind.packageVersion.Setup)" Manufacturer="!(bind.packageManufacturer.Setup)"
UpgradeCode="26C1045A-99CC-4479-987B-376390379441" IconSourceFile="$(var.Setup.ProjectDir)Resources\Application.ico">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLargeLicense">
<bal:WixStandardBootstrapperApplication LicenseFile="$(var.Setup.ProjectDir)Resources\License.rtf" ShowVersion="yes" SuppressOptionsUI="yes" />
</BootstrapperApplicationRef>
<Chain>
<PackageGroupRef Id="DotNetFramework" />
<PackageGroupRef Id="VisualCppRuntime" />
<MsiPackage Id="Setup" SourceFile="$(var.Setup.TargetPath)" Compressed="yes" DisplayInternalUI="no" Vital="yes" />
</Chain>
</Bundle>
</Wix>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<!--
The official NetFxExtension of WiX does not yet support versions newer than 4.6.2. See the following link for the
source used and further issue information: https://github.com/wixtoolset/issues/issues/5575#issuecomment-386223409.
-->
<Fragment>
<util:RegistrySearchRef Id="NETFRAMEWORK45" />
<Variable Name="DotNetMinimumVersion" Type="numeric" Value="461808" />
<PackageGroup Id="DotNetFramework">
<ExePackage Id="NetFx472Redist" PerMachine="yes" Vital="yes" Permanent="yes" Protocol="netfx4" Compressed="no"
Name="NDP472-KB4054530-x86-x64-AllOS-ENU.exe" DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=863265"
DetectCondition="NETFRAMEWORK45 >= DotNetMinimumVersion"
InstallCommand="/q /norestart /ChainingPackage &quot;[WixBundleName]&quot;"
RepairCommand="/q /norestart /repair /ChainingPackage &quot;[WixBundleName]&quot;"
UninstallCommand="/uninstall /q /norestart /ChainingPackage &quot;[WixBundleName]&quot;">
<RemotePayload CertificatePublicKey="C090C1A2CAFA9B967D9C87C7FE02F7C01FBDE4F2" CertificateThumbprint="5EAD300DC7E4D637948ECB0ED829A072BD152E17"
Description="Microsoft .NET Framework 4.7.2 Setup" Hash="D3A416DC5FC75758D41B4C0158ACA69270D2A904"
ProductName="Microsoft .NET Framework 4.7.2" Size="71607232" Version="4.7.3062.0" />
</ExePackage>
</PackageGroup>
</Fragment>
</Wix>

View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.10</ProductVersion>
<ProjectGuid>95b68cbf-c483-4824-bb39-663e840519a0</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>SetupBundle</OutputName>
<OutputType>Bundle</OutputType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
<ItemGroup>
<Compile Include="Bundle.wxs" />
<Compile Include="DotNetFramework.wxs" />
<Compile Include="VisualCppRuntime.wxs" />
</ItemGroup>
<ItemGroup>
<WixExtension Include="WixNetFxExtension">
<HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
<Name>WixNetFxExtension</Name>
</WixExtension>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
<Name>WixUtilExtension</Name>
</WixExtension>
<WixExtension Include="WixBalExtension">
<HintPath>$(WixExtDir)\WixBalExtension.dll</HintPath>
<Name>WixBalExtension</Name>
</WixExtension>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Setup\Setup.wixproj">
<Name>Setup</Name>
<Project>{0e14d163-557e-469e-9112-96936af43a7b}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
</ItemGroup>
<Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' " />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets') " />
<Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' ">
<Error Text="The WiX Toolset v3.11 (or newer) build tools must be installed to build this project. To download the WiX Toolset, see http://wixtoolset.org/releases/" />
</Target>
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Wix.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Fragment>
<!-- Must be the same as the version specified by the RemotePayload -->
<Variable Name="VisualCppMinimumVersion" Type="version" Value="14.0.24215.1" />
<util:ProductSearch Variable="VisualCppInstalledVersion" UpgradeCode="65E5BD06-6392-3027-8C26-853107D3CF1A" />
<PackageGroup Id="VisualCppRuntime">
<ExePackage Id="VisualCppPackage" Name="vc_redist.x86.exe" DisplayName="Microsoft Visual C++ 2015 Redistributable (x86) - 14.0.24215" Cache="no"
Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes" DetectCondition="VisualCppInstalledVersion >= VisualCppMinimumVersion"
DownloadUrl="https://download.microsoft.com/download/6/A/A/6AA4EDFF-645B-48C5-81CC-ED5963AEAD48/vc_redist.x86.exe"
InstallCommand="/install /quiet /norestart" RepairCommand="/repair /quiet /norestart" UninstallCommand="/uninstall /quiet /norestart">
<!-- Must be generated with the following command: "heat payload vc_redist.x86.exe -out vc_redist.x86.wxs" -->
<RemotePayload CertificatePublicKey="371DD003A37769487A2A89A5A9DDB3026451B906" CertificateThumbprint="98ED99A67886D020C564923B7DF25E9AC019DF26"
Description="Microsoft Visual C++ 2015 Redistributable (x86) - 14.0.24215" Hash="72211BD2E7DFC91EA7C8FAC549C49C0543BA791B"
ProductName="Microsoft Visual C++ 2015 Redistributable (x86) - 14.0.24215" Size="14456872" Version="14.0.24215.1" />
</ExePackage>
</PackageGroup>
</Fragment>
</Wix>