mirror of
https://github.com/moonlight-stream/moonlight-qt
synced 2024-11-10 05:34:17 +00:00
Upgrade installer to WiX v4
This commit is contained in:
parent
e60caf06f9
commit
8bf5622d21
9 changed files with 314 additions and 352 deletions
|
@ -44,7 +44,7 @@ Hosting for Moonlight's Raspberry Pi and L4T package repositories is graciously
|
||||||
* [Visual Studio 2019](https://visualstudio.microsoft.com/downloads/) (Community edition is fine)
|
* [Visual Studio 2019](https://visualstudio.microsoft.com/downloads/) (Community edition is fine)
|
||||||
* Select **MSVC 2019** option during Qt installation. MinGW is not supported.
|
* Select **MSVC 2019** option during Qt installation. MinGW is not supported.
|
||||||
* [7-Zip](https://www.7-zip.org/) (only if building installers for non-development PCs)
|
* [7-Zip](https://www.7-zip.org/) (only if building installers for non-development PCs)
|
||||||
* [WiX Toolset](https://wixtoolset.org/releases/v3-14-0-5722/) v3.14.0.5722 or later (only if building installers for non-development PCs)
|
* Wix 4 .NET Tool (install using `dotnet tool install --global wix`)
|
||||||
|
|
||||||
### macOS Build Requirements
|
### macOS Build Requirements
|
||||||
* Qt 6.2 SDK or later
|
* Qt 6.2 SDK or later
|
||||||
|
@ -72,10 +72,10 @@ Hosting for Moonlight's Raspberry Pi and L4T package repositories is graciously
|
||||||
2. Run `git submodule update --init --recursive` from within `moonlight-qt/`
|
2. Run `git submodule update --init --recursive` from within `moonlight-qt/`
|
||||||
3. Open the project in Qt Creator or build from qmake on the command line.
|
3. Open the project in Qt Creator or build from qmake on the command line.
|
||||||
* To build a binary for use on non-development machines, use the scripts in the `scripts` folder.
|
* To build a binary for use on non-development machines, use the scripts in the `scripts` folder.
|
||||||
* For Windows builds, use `scripts\build-arch.bat` and `scripts\generate-bundle.bat`. Execute these scripts from the root of the repository within a Qt command prompt. Ensure WiX and 7-Zip binary directories are in your `%PATH%`.
|
* For Windows builds, use `scripts\build-arch.bat` and `scripts\generate-bundle.bat`. Execute these scripts from the root of the repository within a Qt command prompt. Ensure 7-Zip binary directory is on your `%PATH%`.
|
||||||
* For macOS builds, use `scripts/generate-dmg.sh`. Execute this script from the root of the repository and ensure Qt's `bin` folder is in your `$PATH`.
|
* For macOS builds, use `scripts/generate-dmg.sh`. Execute this script from the root of the repository and ensure Qt's `bin` folder is in your `$PATH`.
|
||||||
* For Steam Link builds, run `scripts/build-steamlink-app.sh` from the root of the repository.
|
* For Steam Link builds, run `scripts/build-steamlink-app.sh` from the root of the repository.
|
||||||
* To build from the command line for development use, run `qmake moonlight-qt.pro` then `make debug` or `make release`
|
* To build from the command line for development use on macOS or Linux, run `qmake moonlight-qt.pro` then `make debug` or `make release`
|
||||||
* To create an embedded build for a single-purpose device, use `qmake "CONFIG+=embedded" moonlight-qt.pro` and build normally.
|
* To create an embedded build for a single-purpose device, use `qmake "CONFIG+=embedded" moonlight-qt.pro` and build normally.
|
||||||
* This build will lack windowed mode, Discord/Help links, and other features that don't make sense on an embedded device.
|
* This build will lack windowed mode, Discord/Help links, and other features that don't make sense on an embedded device.
|
||||||
* For platforms with poor GL performance, add `"CONFIG+=glslow"` to prefer direct KMSDRM rendering over EGL/GLES renderers. Direct KMSDRM rendering can use dedicated YUV/RGB conversion and scaling hardware rather than slower GPU shaders for these operations.
|
* For platforms with poor GL performance, add `"CONFIG+=glslow"` to prefer direct KMSDRM rendering over EGL/GLES renderers. Direct KMSDRM rendering can use dedicated YUV/RGB conversion and scaling hardware rather than slower GPU shaders for these operations.
|
||||||
|
|
|
@ -15,6 +15,7 @@ environment:
|
||||||
FFMPEG_CONFIGURE_ARGS: --enable-pic --disable-static --enable-shared --disable-all --enable-avcodec --enable-decoder=h264 --enable-decoder=hevc --enable-decoder=av1 --enable-nvdec --enable-hwaccel=h264_nvdec --enable-hwaccel=hevc_nvdec --enable-hwaccel=av1_nvdec --enable-hwaccel=h264_vaapi --enable-hwaccel=hevc_vaapi --enable-hwaccel=av1_vaapi --enable-hwaccel=h264_vdpau --enable-hwaccel=hevc_vdpau --enable-hwaccel=av1_vdpau
|
FFMPEG_CONFIGURE_ARGS: --enable-pic --disable-static --enable-shared --disable-all --enable-avcodec --enable-decoder=h264 --enable-decoder=hevc --enable-decoder=av1 --enable-nvdec --enable-hwaccel=h264_nvdec --enable-hwaccel=hevc_nvdec --enable-hwaccel=av1_nvdec --enable-hwaccel=h264_vaapi --enable-hwaccel=hevc_vaapi --enable-hwaccel=av1_vaapi --enable-hwaccel=h264_vdpau --enable-hwaccel=hevc_vdpau --enable-hwaccel=av1_vdpau
|
||||||
|
|
||||||
install:
|
install:
|
||||||
|
- cmd: 'dotnet tool install --global wix'
|
||||||
- sh: '[ "$BUILD_TARGET" != macos ] || nvm use node'
|
- sh: '[ "$BUILD_TARGET" != macos ] || nvm use node'
|
||||||
- sh: '[ "$BUILD_TARGET" != macos ] || npm install --global create-dmg'
|
- sh: '[ "$BUILD_TARGET" != macos ] || npm install --global create-dmg'
|
||||||
- sh: '[ "$BUILD_TARGET" != steamlink ] || sudo apt install -y libc6:i386 libstdc++6:i386'
|
- sh: '[ "$BUILD_TARGET" != steamlink ] || sudo apt install -y libc6:i386 libstdc++6:i386'
|
||||||
|
@ -38,9 +39,9 @@ before_build:
|
||||||
- sh: 'export VERSION=`cat app/version.txt`'
|
- sh: 'export VERSION=`cat app/version.txt`'
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: 'set PATH=%OLDPATH%;%QTDIR%\msvc2019_64\bin;%ProgramFiles(x86)%\WiX Toolset v3.11\bin'
|
- cmd: 'set PATH=%OLDPATH%;%QTDIR%\msvc2019_64\bin'
|
||||||
- cmd: 'scripts\build-arch.bat Release'
|
- cmd: 'scripts\build-arch.bat Release'
|
||||||
- cmd: 'set PATH=%OLDPATH%;%QTDIR%\msvc2019\bin;%ProgramFiles(x86)%\WiX Toolset v3.11\bin'
|
- cmd: 'set PATH=%OLDPATH%;%QTDIR%\msvc2019\bin'
|
||||||
- cmd: 'scripts\build-arch.bat Release'
|
- cmd: 'scripts\build-arch.bat Release'
|
||||||
- cmd: 'scripts\generate-bundle.bat Release'
|
- cmd: 'scripts\generate-bundle.bat Release'
|
||||||
- sh: '[ "$BUILD_TARGET" != linux ] || source /opt/qt515/bin/qt515-env.sh'
|
- sh: '[ "$BUILD_TARGET" != linux ] || source /opt/qt515/bin/qt515-env.sh'
|
||||||
|
|
|
@ -193,17 +193,9 @@ echo Deleting original QML files
|
||||||
forfiles /p %DEPLOY_FOLDER% /m *.qml /s /c "cmd /c del @path"
|
forfiles /p %DEPLOY_FOLDER% /m *.qml /s /c "cmd /c del @path"
|
||||||
if !ERRORLEVEL! NEQ 0 goto Error
|
if !ERRORLEVEL! NEQ 0 goto Error
|
||||||
|
|
||||||
echo Harvesting files for WiX
|
|
||||||
"%WIX%\bin\heat" dir %DEPLOY_FOLDER% -srd -sfrag -ag -sw5150 -cg MoonlightDependencies -var var.SourceDir -dr INSTALLFOLDER -out %BUILD_FOLDER%\Dependencies.wxs
|
|
||||||
if !ERRORLEVEL! NEQ 0 goto Error
|
|
||||||
|
|
||||||
echo Copying application binary to deployment directory
|
|
||||||
copy %BUILD_FOLDER%\app\%BUILD_CONFIG%\Moonlight.exe %DEPLOY_FOLDER%
|
|
||||||
if !ERRORLEVEL! NEQ 0 goto Error
|
|
||||||
|
|
||||||
if "%SIGN%"=="1" (
|
if "%SIGN%"=="1" (
|
||||||
echo Signing deployed binaries
|
echo Signing deployed binaries
|
||||||
set FILES_TO_SIGN=
|
set FILES_TO_SIGN=%BUILD_FOLDER%\app\%BUILD_CONFIG%\Moonlight.exe
|
||||||
for /r "%DEPLOY_FOLDER%" %%f in (*.dll *.exe) do (
|
for /r "%DEPLOY_FOLDER%" %%f in (*.dll *.exe) do (
|
||||||
set FILES_TO_SIGN=!FILES_TO_SIGN! %%f
|
set FILES_TO_SIGN=!FILES_TO_SIGN! %%f
|
||||||
)
|
)
|
||||||
|
@ -227,6 +219,10 @@ if "%SIGN%"=="1" (
|
||||||
if !ERRORLEVEL! NEQ 0 goto Error
|
if !ERRORLEVEL! NEQ 0 goto Error
|
||||||
)
|
)
|
||||||
|
|
||||||
|
echo Copying application binary to deployment directory
|
||||||
|
copy %BUILD_FOLDER%\app\%BUILD_CONFIG%\Moonlight.exe %DEPLOY_FOLDER%
|
||||||
|
if !ERRORLEVEL! NEQ 0 goto Error
|
||||||
|
|
||||||
echo Building portable package
|
echo Building portable package
|
||||||
rem This must be done after WiX harvesting and signing, since the VCRT dlls are MS signed
|
rem This must be done after WiX harvesting and signing, since the VCRT dlls are MS signed
|
||||||
rem and should not be harvested for inclusion in the full installer
|
rem and should not be harvested for inclusion in the full installer
|
||||||
|
|
|
@ -18,11 +18,11 @@ function Print-WixForArch([string]$Arch) {
|
||||||
|
|
||||||
$targetSize = (Get-Item $file).Length
|
$targetSize = (Get-Item $file).Length
|
||||||
$targetVersion = (Get-Command $file).Version
|
$targetVersion = (Get-Command $file).Version
|
||||||
$targetSha1 = (Get-FileHash -Path $file -Algorithm SHA1).Hash
|
$targetSha512 = (Get-FileHash -Path $file -Algorithm SHA512).Hash
|
||||||
|
|
||||||
Write-Output "<?define VCREDIST_VER = `"$targetVersion`" ?>"
|
Write-Output "<?define VCREDIST_VER = `"$targetVersion`" ?>"
|
||||||
Write-Output "<?define VCREDIST_$($Arch)_SIZE = `"$targetSize`" ?>"
|
Write-Output "<?define VCREDIST_$($Arch)_SIZE = `"$targetSize`" ?>"
|
||||||
Write-Output "<?define VCREDIST_$($Arch)_SHA1 = `"$targetSha1`" ?>"
|
Write-Output "<?define VCREDIST_$($Arch)_SHA512 = `"$targetSha512`" ?>"
|
||||||
Write-Output "<?define VCREDIST_$($Arch)_URL = `"$targetUrl`" ?>"
|
Write-Output "<?define VCREDIST_$($Arch)_URL = `"$targetUrl`" ?>"
|
||||||
Write-Output "<?define VCREDIST_$($Arch)_UPGRADE_CODE = `"$($UpgradeCodes[$Arch])`" ?>"
|
Write-Output "<?define VCREDIST_$($Arch)_UPGRADE_CODE = `"$($UpgradeCodes[$Arch])`" ?>"
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,4 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<Project Sdk="WixToolset.Sdk/4.0.1" ToolsVersion="4.0">
|
||||||
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup>
|
|
||||||
<ProductVersion>3.10</ProductVersion>
|
|
||||||
<ProjectGuid>8468ef94-3bb8-47a5-af15-0e314afe664d</ProjectGuid>
|
|
||||||
<SchemaVersion>2.0</SchemaVersion>
|
|
||||||
<OutputName>Moonlight</OutputName>
|
|
||||||
<OutputType>Package</OutputType>
|
|
||||||
<DefineSolutionProperties>false</DefineSolutionProperties>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||||
<DefineConstants>Debug</DefineConstants>
|
<DefineConstants>Debug</DefineConstants>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -16,33 +7,22 @@
|
||||||
<IntermediateOutputPath>$(BUILD_FOLDER)\</IntermediateOutputPath>
|
<IntermediateOutputPath>$(BUILD_FOLDER)\</IntermediateOutputPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<DefineConstants>SourceDir=$(DEPLOY_FOLDER)</DefineConstants>
|
<DefineConstants>DeployDir=$(DEPLOY_FOLDER);BuildDir=$(BUILD_FOLDER)</DefineConstants>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Product.wxs" />
|
<HarvestDirectory Include="$(DEPLOY_FOLDER)">
|
||||||
<Compile Include="$(BUILD_FOLDER)\Dependencies.wxs" />
|
<ComponentGroupName>MoonlightDependencies</ComponentGroupName>
|
||||||
|
<DirectoryRefId>INSTALLFOLDER</DirectoryRefId>
|
||||||
|
<PreprocessorVariable>DeployDir</PreprocessorVariable>
|
||||||
|
<SuppressRootDirectory>true</SuppressRootDirectory>
|
||||||
|
<SuppressCom>true</SuppressCom>
|
||||||
|
<SuppressRegistry>true</SuppressRegistry>
|
||||||
|
</HarvestDirectory>
|
||||||
|
<BindPath Include="$(DEPLOY_FOLDER)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<WixExtension Include="WixFirewallExtension">
|
<PackageReference Include="WixToolset.Firewall.wixext" Version="4.*" />
|
||||||
<HintPath>$(WixExtDir)\WixFirewallExtension.dll</HintPath>
|
<PackageReference Include="WixToolset.Util.wixext" Version="4.*" />
|
||||||
<Name>WixFirewallExtension</Name>
|
<PackageReference Include="WixToolset.Heat" />
|
||||||
</WixExtension>
|
|
||||||
<WixExtension Include="WixUtilExtension">
|
|
||||||
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
|
|
||||||
<Name>WixUtilExtension</Name>
|
|
||||||
</WixExtension>
|
|
||||||
</ItemGroup>
|
</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>
|
</Project>
|
|
@ -1,117 +1,107 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?define ShortName = "Moonlight" ?>
|
||||||
|
|
||||||
<?define ShortName = "Moonlight" ?>
|
|
||||||
<?define FullName = "Moonlight Game Streaming Client" ?>
|
<?define FullName = "Moonlight Game Streaming Client" ?>
|
||||||
|
|
||||||
<?define ShortcutName = "$(var.ShortName)" ?>
|
<?define ShortcutName = "$(var.ShortName)" ?>
|
||||||
<?define ShortcutDesc = "Stream games and other applications from another PC" ?>
|
<?define ShortcutDesc = "Stream games and other applications from another PC" ?>
|
||||||
<?define InstallFolder = "Moonlight Game Streaming" ?>
|
<?define InstallFolder = "Moonlight Game Streaming" ?>
|
||||||
|
|
||||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
|
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:fire="http://wixtoolset.org/schemas/v4/wxs/firewall" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
|
||||||
xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension"
|
|
||||||
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
|
|
||||||
|
|
||||||
<Product Id="*"
|
<Package Name="$(var.FullName)"
|
||||||
Name="$(var.FullName)"
|
Language="1033"
|
||||||
Language="1033"
|
Version="!(bind.fileVersion.MoonlightExe)"
|
||||||
Version="!(bind.fileVersion.MoonlightExe)"
|
Manufacturer="Moonlight Game Streaming Project"
|
||||||
Manufacturer="Moonlight Game Streaming Project"
|
UpgradeCode="5c09f94e-f809-4c6a-9b7b-597c99f041fe">
|
||||||
UpgradeCode="5c09f94e-f809-4c6a-9b7b-597c99f041fe">
|
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." Schedule="afterInstallInitialize" />
|
||||||
|
|
||||||
<Package InstallerVersion="500" Compressed="yes" InstallScope="perMachine" />
|
|
||||||
|
|
||||||
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." Schedule="afterInstallInitialize" />
|
|
||||||
<MediaTemplate CompressionLevel="high" EmbedCab="yes" />
|
<MediaTemplate CompressionLevel="high" EmbedCab="yes" />
|
||||||
|
|
||||||
<Property Id="MPSSVC_START">
|
<Property Id="MPSSVC_START">
|
||||||
<RegistrySearch Id="MpsSvcStart"
|
<RegistrySearch Id="MpsSvcStart"
|
||||||
Root="HKLM"
|
Root="HKLM"
|
||||||
Key="System\CurrentControlSet\Services\MpsSvc"
|
Key="System\CurrentControlSet\Services\MpsSvc"
|
||||||
Name="Start"
|
Name="Start"
|
||||||
Type="raw" />
|
Type="raw" />
|
||||||
</Property>
|
</Property>
|
||||||
|
|
||||||
<Condition Message="Setup cannot proceed because the Windows Firewall service has been improperly disabled or stopped. You must start the Windows Firewall service (MpsSvc) to continue. If you would like to disable Windows Firewall properly, use the Windows Firewall options in Control Panel.">
|
<Launch Condition="Installed OR MPSSVC_START="#2""
|
||||||
<![CDATA[Installed OR MPSSVC_START="#2"]]>
|
Message="Setup cannot proceed because the Windows Firewall service has been improperly disabled or stopped. You must start the Windows Firewall service (MpsSvc) to continue. If you would like to disable Windows Firewall properly, use the Windows Firewall options in Control Panel." />
|
||||||
</Condition>
|
|
||||||
|
|
||||||
<?if $(var.Platform) = x64 Or $(var.Platform) = arm64 ?>
|
<Property Id="APPDATAFOLDER" Value="%LOCALAPPDATA%\Moonlight Game Streaming Project" />
|
||||||
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
|
|
||||||
<?else ?>
|
|
||||||
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
|
|
||||||
<?endif ?>
|
|
||||||
|
|
||||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
|
||||||
<Directory Id="DesktopFolder" />
|
|
||||||
<Directory Id="$(var.PlatformProgramFilesFolder)">
|
|
||||||
<Directory Id="INSTALLFOLDER" Name="$(var.InstallFolder)" />
|
|
||||||
</Directory>
|
|
||||||
<Directory Id="ProgramMenuFolder">
|
|
||||||
<Directory Id="ApplicationProgramsFolder" Name="$(var.InstallFolder)" />
|
|
||||||
</Directory>
|
|
||||||
</Directory>
|
|
||||||
|
|
||||||
<Property Id="APPDATAFOLDER">%LOCALAPPDATA%\Moonlight Game Streaming Project</Property>
|
|
||||||
|
|
||||||
<!-- There's no way to delete a registry key on uninstall but not major upgrade, so
|
<!-- There's no way to delete a registry key on uninstall but not major upgrade, so
|
||||||
we have to roll our own deletion via custom action -->
|
we have to roll our own deletion via custom action -->
|
||||||
<CustomAction Id="DeleteRegistryKey"
|
<CustomAction Id="DeleteRegistryKey"
|
||||||
Directory="$(var.PlatformProgramFilesFolder)"
|
Directory="ProgramFiles6432Folder"
|
||||||
ExeCommand="reg.exe delete "HKCU\Software\Moonlight Game Streaming Project" /f"
|
ExeCommand="reg.exe delete "HKCU\Software\Moonlight Game Streaming Project" /f"
|
||||||
Execute="deferred"
|
Execute="deferred"
|
||||||
Return="ignore"
|
Return="ignore"
|
||||||
Impersonate="yes"/>
|
Impersonate="yes" />
|
||||||
<InstallExecuteSequence>
|
<InstallExecuteSequence>
|
||||||
<Custom Action="DeleteRegistryKey" Before="InstallFinalize">Installed AND REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
|
<Custom Action="DeleteRegistryKey"
|
||||||
|
Before="InstallFinalize"
|
||||||
|
Condition="Installed AND REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE" />
|
||||||
</InstallExecuteSequence>
|
</InstallExecuteSequence>
|
||||||
|
|
||||||
<Component Id="MoonlightShortcuts" Guid="*" Directory="INSTALLFOLDER">
|
<Component Id="MoonlightShortcuts" Directory="INSTALLFOLDER">
|
||||||
<Shortcut Id="StartMenuShortcut"
|
<Shortcut Id="StartMenuShortcut"
|
||||||
Name="$(var.ShortcutName)"
|
Name="$(var.ShortcutName)"
|
||||||
Description="$(var.ShortcutDesc)"
|
Description="$(var.ShortcutDesc)"
|
||||||
Target="[#MoonlightExe]"
|
Target="[#MoonlightExe]"
|
||||||
Directory="ApplicationProgramsFolder"
|
Directory="ApplicationProgramsFolder"
|
||||||
WorkingDirectory="INSTALLFOLDER" />
|
WorkingDirectory="INSTALLFOLDER" />
|
||||||
<RemoveFolder Id="CleanupStartMenuShortcut" Directory="ApplicationProgramsFolder" On="uninstall" />
|
<RemoveFolder Id="CleanupStartMenuShortcut"
|
||||||
<util:RemoveFolderEx Id="CleanupAppDataFolder" On="uninstall" Property="APPDATAFOLDER" />
|
Directory="ApplicationProgramsFolder"
|
||||||
<RegistryValue Root="HKCU" Key="Software\Moonlight Game Streaming Project" Name="Installed" Type="integer" Value="1" KeyPath="yes" />
|
On="uninstall" />
|
||||||
|
<util:RemoveFolderEx Id="CleanupAppDataFolder"
|
||||||
|
On="uninstall"
|
||||||
|
Property="APPDATAFOLDER" />
|
||||||
|
<RegistryValue Root="HKCU"
|
||||||
|
Key="Software\Moonlight Game Streaming Project"
|
||||||
|
Name="Installed"
|
||||||
|
Type="integer"
|
||||||
|
Value="1"
|
||||||
|
KeyPath="yes" />
|
||||||
</Component>
|
</Component>
|
||||||
|
|
||||||
<Component Id="MoonlightDesktopShortcut" Guid="*" Directory="INSTALLFOLDER">
|
<Component Id="MoonlightDesktopShortcut" Directory="INSTALLFOLDER" Condition="ADDDESKTOPSHORTCUT=1">
|
||||||
<Shortcut Id="DesktopShortcut"
|
<Shortcut Id="DesktopShortcut"
|
||||||
Name="$(var.ShortcutName)"
|
Name="$(var.ShortcutName)"
|
||||||
Description="$(var.ShortcutDesc)"
|
Description="$(var.ShortcutDesc)"
|
||||||
Target="[#MoonlightExe]"
|
Target="[#MoonlightExe]"
|
||||||
Directory="DesktopFolder"
|
Directory="DesktopFolder"
|
||||||
WorkingDirectory="INSTALLFOLDER" />
|
WorkingDirectory="INSTALLFOLDER" />
|
||||||
<RemoveFolder Id="CleanupDesktopShortcut" Directory="DesktopFolder" On="uninstall" />
|
<RemoveFolder Id="CleanupDesktopShortcut"
|
||||||
|
Directory="DesktopFolder"
|
||||||
|
On="uninstall" />
|
||||||
<RegistryValue Root="HKCU"
|
<RegistryValue Root="HKCU"
|
||||||
Key="Software\Moonlight Game Streaming Project"
|
Key="Software\Moonlight Game Streaming Project"
|
||||||
Name="DesktopShortcutInstalled"
|
Name="DesktopShortcutInstalled"
|
||||||
Type="integer"
|
Type="integer"
|
||||||
Value="1"
|
Value="1"
|
||||||
KeyPath="yes" />
|
KeyPath="yes" />
|
||||||
<Condition>ADDDESKTOPSHORTCUT=1</Condition>
|
|
||||||
</Component>
|
</Component>
|
||||||
|
|
||||||
<!-- Persist desktop shortcut's installed state to let Bundle.wxs know if
|
<!-- Persist desktop shortcut's installed state to let Bundle.wxs know if
|
||||||
the desktop shortcut should installed by default when upgrading the
|
the desktop shortcut should installed by default when upgrading the
|
||||||
product -->
|
product -->
|
||||||
<Component Id="MoonlightDesktopShortcutState" Guid="*" Directory="INSTALLFOLDER">
|
<Component Id="MoonlightDesktopShortcutState" Directory="INSTALLFOLDER">
|
||||||
<RegistryValue Root="HKCU"
|
<RegistryValue Root="HKCU"
|
||||||
Key="Software\Moonlight Game Streaming Project"
|
Key="Software\Moonlight Game Streaming Project"
|
||||||
Name="DesktopShortcutInstallState"
|
Name="DesktopShortcutInstallState"
|
||||||
Type="integer"
|
Type="integer"
|
||||||
Value="[ADDDESKTOPSHORTCUT]"
|
Value="[ADDDESKTOPSHORTCUT]"
|
||||||
KeyPath="yes" />
|
KeyPath="yes" />
|
||||||
</Component>
|
</Component>
|
||||||
|
|
||||||
<DirectoryRef Id="INSTALLFOLDER">
|
<DirectoryRef Id="INSTALLFOLDER">
|
||||||
<Component Id="Moonlight" Guid="*">
|
<Component Id="Moonlight">
|
||||||
<File Id="MoonlightExe" KeyPath="yes" Checksum="yes" Source="$(var.SourceDir)\Moonlight.exe">
|
<File Id="MoonlightExe"
|
||||||
|
KeyPath="yes"
|
||||||
|
Checksum="yes"
|
||||||
|
Source="$(var.BuildDir)\app\$(var.Configuration)\Moonlight.exe">
|
||||||
<fire:FirewallException Id="MoonlightFirewallException"
|
<fire:FirewallException Id="MoonlightFirewallException"
|
||||||
Scope="any"
|
Scope="any"
|
||||||
Name="$(var.FullName)" />
|
Name="$(var.FullName)" />
|
||||||
</File>
|
</File>
|
||||||
</Component>
|
</Component>
|
||||||
</DirectoryRef>
|
</DirectoryRef>
|
||||||
|
@ -123,5 +113,13 @@
|
||||||
<ComponentRef Id="MoonlightDesktopShortcut" />
|
<ComponentRef Id="MoonlightDesktopShortcut" />
|
||||||
<ComponentGroupRef Id="MoonlightDependencies" />
|
<ComponentGroupRef Id="MoonlightDependencies" />
|
||||||
</Feature>
|
</Feature>
|
||||||
</Product>
|
|
||||||
|
<StandardDirectory Id="DesktopFolder" />
|
||||||
|
<StandardDirectory Id="ProgramFiles6432Folder">
|
||||||
|
<Directory Id="INSTALLFOLDER" Name="$(var.InstallFolder)" />
|
||||||
|
</StandardDirectory>
|
||||||
|
<StandardDirectory Id="ProgramMenuFolder">
|
||||||
|
<Directory Id="ApplicationProgramsFolder" Name="$(var.InstallFolder)" />
|
||||||
|
</StandardDirectory>
|
||||||
|
</Package>
|
||||||
</Wix>
|
</Wix>
|
||||||
|
|
|
@ -1,41 +1,32 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<!-- This block is autogenerated using scripts\update-msvcredist.ps1 -->
|
||||||
|
<?define VCREDIST_VER = "14.36.32532.0" ?>
|
||||||
<!-- This block is autogenerated using scripts\update-msvcredist.ps1 -->
|
<?define VCREDIST_X86_SIZE = "13837672" ?>
|
||||||
<?define VCREDIST_VER = "14.34.31938.0" ?>
|
<?define VCREDIST_X86_SHA512 = "EC70786704EAD0494FAB8F7A9F46554FEACA45C79B831C5963ECC20243FA0F31053B6E0CEB450F86C16E67E739C4BE53AD202C2397C8541365B7252904169B41" ?>
|
||||||
<?define VCREDIST_X86_SIZE = "13838816" ?>
|
<?define VCREDIST_X86_URL = "https://download.visualstudio.microsoft.com/download/pr/eaab1f82-787d-4fd7-8c73-f782341a0c63/5365A927487945ECB040E143EA770ADBB296074ECE4021B1D14213BDE538C490/VC_redist.x86.exe" ?>
|
||||||
<?define VCREDIST_X86_SHA1 = "663399541A7D3BB1B5EA0E57A00C024E50D8506C" ?>
|
|
||||||
<?define VCREDIST_X86_URL = "https://download.visualstudio.microsoft.com/download/pr/b2519016-4a13-4120-936c-cae003d567c4/8AE59D82845159DB3A70763F5CB1571E45EBF6A1ADFECC47574BA17B019483A0/VC_redist.x86.exe" ?>
|
|
||||||
<?define VCREDIST_X86_UPGRADE_CODE = "65E5BD06-6392-3027-8C26-853107D3CF1A" ?>
|
<?define VCREDIST_X86_UPGRADE_CODE = "65E5BD06-6392-3027-8C26-853107D3CF1A" ?>
|
||||||
<?define VCREDIST_X64_SIZE = "25490328" ?>
|
<?define VCREDIST_X64_SIZE = "25355496" ?>
|
||||||
<?define VCREDIST_X64_SHA1 = "4DE9F6681F0F213B132DEF3AF88A3C68483F5F32" ?>
|
<?define VCREDIST_X64_SHA512 = "70A888D5891EFD2A48D33C22F35E9178BD113032162DC5A170E7C56F2D592E3C59A08904B9F1B54450C80F8863BDA746E431B396E4C1624B91FF15DD701BD939" ?>
|
||||||
<?define VCREDIST_X64_URL = "https://download.visualstudio.microsoft.com/download/pr/8b92f460-7e03-4c75-a139-e264a770758d/26C2C72FBA6438F5E29AF8EBC4826A1E424581B3C446F8C735361F1DB7BEFF72/VC_redist.x64.exe" ?>
|
<?define VCREDIST_X64_URL = "https://download.visualstudio.microsoft.com/download/pr/eaab1f82-787d-4fd7-8c73-f782341a0c63/917C37D816488545B70AFFD77D6E486E4DD27E2ECE63F6BBAAF486B178B2B888/VC_redist.x64.exe" ?>
|
||||||
<?define VCREDIST_X64_UPGRADE_CODE = "36F68A90-239C-34DF-B58C-64B30153CE35" ?>
|
<?define VCREDIST_X64_UPGRADE_CODE = "36F68A90-239C-34DF-B58C-64B30153CE35" ?>
|
||||||
<?define VCREDIST_ARM64_SIZE = "11654656" ?>
|
<?define VCREDIST_ARM64_SIZE = "11511496" ?>
|
||||||
<?define VCREDIST_ARM64_SHA1 = "269C5ED4275557677B0A306761DE022CCEF54E1F" ?>
|
<?define VCREDIST_ARM64_SHA512 = "5A70C09060DED33EE9129728C97AD0E9B70BE5010706FB59817359D189E87F5A599DFFF5070A10A48404C511C6395A8B5C69BF6FFFA5DD2B4DE083EF1265CFB8" ?>
|
||||||
<?define VCREDIST_ARM64_URL = "https://download.visualstudio.microsoft.com/download/pr/b2519016-4a13-4120-936c-cae003d567c4/EC530B52C87AF9DBECBCCE83E5945FD0CAA57969A858D7497E4D5CBBD6F53F60/VC_redist.arm64.exe" ?>
|
<?define VCREDIST_ARM64_URL = "https://download.visualstudio.microsoft.com/download/pr/eaab1f82-787d-4fd7-8c73-f782341a0c63/37342E0ABDAEAE0297F64A889F842AC9453139639FB0178C0754A7D2F330043A/VC_redist.arm64.exe" ?>
|
||||||
<?define VCREDIST_ARM64_UPGRADE_CODE = "DC9BAE42-810B-423A-9E25-E4073F1C7B00" ?>
|
<?define VCREDIST_ARM64_UPGRADE_CODE = "DC9BAE42-810B-423A-9E25-E4073F1C7B00" ?>
|
||||||
|
|
||||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
|
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
|
||||||
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension"
|
|
||||||
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
|
|
||||||
|
|
||||||
<Bundle Name="Moonlight Game Streaming Client"
|
<Bundle Name="Moonlight Game Streaming Client"
|
||||||
Version="!(bind.PackageVersion.Moonlight_x64)"
|
Version="!(bind.PackageVersion.Moonlight_x64)"
|
||||||
Manufacturer="Moonlight Game Streaming Project"
|
Manufacturer="Moonlight Game Streaming Project"
|
||||||
UpgradeCode="466fa35d-4be4-40ef-9ce5-afadc3b63bc5"
|
UpgradeCode="466fa35d-4be4-40ef-9ce5-afadc3b63bc5"
|
||||||
HelpUrl="https://github.com/moonlight-stream/moonlight-docs/wiki/Setup-Guide"
|
HelpUrl="https://github.com/moonlight-stream/moonlight-docs/wiki/Setup-Guide"
|
||||||
UpdateUrl="https://github.com/moonlight-stream/moonlight-qt/releases"
|
UpdateUrl="https://github.com/moonlight-stream/moonlight-qt/releases"
|
||||||
DisableModify="yes"
|
DisableModify="yes"
|
||||||
IconSourceFile="..\..\app\moonlight.ico">
|
IconSourceFile="..\..\app\moonlight.ico">
|
||||||
|
|
||||||
<bal:Condition Message="Moonlight requires Windows 7 or later.">
|
<bal:Condition Message="Moonlight requires Windows 7 or later." Condition="VersionNT >= v6.1" />
|
||||||
<![CDATA[VersionNT >= v6.1]]>
|
|
||||||
</bal:Condition>
|
|
||||||
|
|
||||||
<!-- HACK: Force replacement of lower versioned files too. This is only safe because we don't install any shared files -->
|
<Variable Name="InstallFolder" Type="formatted" Value="[ProgramFiles6432Folder]Moonlight Game Streaming" />
|
||||||
<Variable Name="REINSTALLMODE" bal:Overridable="yes" Value="dmus" />
|
|
||||||
|
|
||||||
<Variable Name="InstallFolder" Type="string" Value="[ProgramFiles6432Folder]Moonlight Game Streaming" />
|
|
||||||
|
|
||||||
<!-- Define "Add desktop shortcut" -checkbox's state by defining a variable
|
<!-- Define "Add desktop shortcut" -checkbox's state by defining a variable
|
||||||
which has same name as the checkbox has. Value 1 means that checkbox
|
which has same name as the checkbox has. Value 1 means that checkbox
|
||||||
|
@ -44,102 +35,90 @@
|
||||||
<Variable Name="AddDesktopShortcutCheckbox" Type="numeric" Value="1" />
|
<Variable Name="AddDesktopShortcutCheckbox" Type="numeric" Value="1" />
|
||||||
<!-- Get checkbox's state from registry if present. The registry value
|
<!-- Get checkbox's state from registry if present. The registry value
|
||||||
"DesktopShortcutInstallState" is set in Product.wxs. -->
|
"DesktopShortcutInstallState" is set in Product.wxs. -->
|
||||||
<util:RegistrySearch Variable="HasDesktopShortcutInstallStateRegKey"
|
<util:RegistrySearch Variable="HasDesktopShortcutInstallStateRegKey" Root="HKCU" Key="Software\Moonlight Game Streaming Project" Value="DesktopShortcutInstallState" Result="exists" />
|
||||||
Root="HKCU"
|
<util:RegistrySearch Variable="AddDesktopShortcutCheckbox" Root="HKCU" Key="Software\Moonlight Game Streaming Project" Value="DesktopShortcutInstallState" Condition="HasDesktopShortcutInstallStateRegKey" />
|
||||||
Key="Software\Moonlight Game Streaming Project"
|
|
||||||
Value="DesktopShortcutInstallState"
|
|
||||||
Result="exists" />
|
|
||||||
<util:RegistrySearch Variable="AddDesktopShortcutCheckbox"
|
|
||||||
Root="HKCU"
|
|
||||||
Key="Software\Moonlight Game Streaming Project"
|
|
||||||
Value="DesktopShortcutInstallState"
|
|
||||||
Condition="HasDesktopShortcutInstallStateRegKey" />
|
|
||||||
|
|
||||||
<util:ProductSearch Id="VCREDIST_14_x86"
|
<util:ProductSearch Id="VCREDIST_14_x86"
|
||||||
UpgradeCode="$(var.VCREDIST_X86_UPGRADE_CODE)"
|
UpgradeCode="$(var.VCREDIST_X86_UPGRADE_CODE)"
|
||||||
Result="version"
|
Result="version"
|
||||||
Variable="VCREDIST_14_x86" />
|
Variable="VCREDIST_14_x86" />
|
||||||
|
|
||||||
<util:ProductSearch Id="VCREDIST_14_x64"
|
<util:ProductSearch Id="VCREDIST_14_x64"
|
||||||
UpgradeCode="$(var.VCREDIST_X64_UPGRADE_CODE)"
|
UpgradeCode="$(var.VCREDIST_X64_UPGRADE_CODE)"
|
||||||
Result="version"
|
Result="version"
|
||||||
Variable="VCREDIST_14_x64" />
|
Variable="VCREDIST_14_x64" />
|
||||||
|
|
||||||
<util:ProductSearch Id="VCREDIST_14_ARM64"
|
<util:ProductSearch Id="VCREDIST_14_ARM64"
|
||||||
UpgradeCode="$(var.VCREDIST_ARM64_UPGRADE_CODE)"
|
UpgradeCode="$(var.VCREDIST_ARM64_UPGRADE_CODE)"
|
||||||
Result="version"
|
Result="version"
|
||||||
Variable="VCREDIST_14_ARM64" />
|
Variable="VCREDIST_14_ARM64" />
|
||||||
|
|
||||||
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
|
<BootstrapperApplication>
|
||||||
<bal:WixStandardBootstrapperApplication
|
<bal:WixStandardBootstrapperApplication ShowVersion="yes"
|
||||||
ShowVersion="yes"
|
LicenseFile="license.rtf"
|
||||||
LicenseFile="license.rtf"
|
LogoFile="..\..\app\moonlight_wix.png"
|
||||||
LogoFile="..\..\app\moonlight_wix.png"
|
LaunchTarget="[InstallFolder]\Moonlight.exe"
|
||||||
ShowFilesInUse="yes"
|
ThemeFile="RtfTheme.xml"
|
||||||
LaunchTarget="[InstallFolder]\Moonlight.exe"
|
Theme="rtfLicense" />
|
||||||
ThemeFile="RtfTheme.xml" />
|
</BootstrapperApplication>
|
||||||
</BootstrapperApplicationRef>
|
|
||||||
|
|
||||||
<Chain>
|
<Chain>
|
||||||
<ExePackage Name="Microsoft Visual C++ 2015-2022 Redistributable - x86"
|
<ExePackage Cache="remove"
|
||||||
Cache="no"
|
PerMachine="yes"
|
||||||
Compressed="no"
|
Permanent="yes"
|
||||||
PerMachine="yes"
|
Vital="yes"
|
||||||
Permanent="yes"
|
InstallCondition="(NOT VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 332)"
|
||||||
Vital="yes"
|
DetectCondition="VCREDIST_14_x86 >= v$(var.VCREDIST_VER)"
|
||||||
InstallCommand="/install /quiet /norestart"
|
InstallArguments="/install /quiet /norestart">
|
||||||
DownloadUrl="$(var.VCREDIST_X86_URL)"
|
|
||||||
InstallCondition="(NOT VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 332)"
|
|
||||||
DetectCondition="VCREDIST_14_x86 >= v$(var.VCREDIST_VER)">
|
|
||||||
|
|
||||||
<RemotePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - x86"
|
<ExePackagePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - x86"
|
||||||
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - x86"
|
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - x86"
|
||||||
Size="$(var.VCREDIST_X86_SIZE)"
|
Size="$(var.VCREDIST_X86_SIZE)"
|
||||||
Version="$(var.VCREDIST_VER)"
|
Version="$(var.VCREDIST_VER)"
|
||||||
Hash="$(var.VCREDIST_X86_SHA1)"/>
|
Hash="$(var.VCREDIST_X86_SHA512)"
|
||||||
|
Name="VC_redist.x86.exe"
|
||||||
|
DownloadUrl="$(var.VCREDIST_X86_URL)" />
|
||||||
|
|
||||||
<!-- Newer version installed is fine -->
|
<!-- Newer version installed is fine -->
|
||||||
<ExitCode Value="1638" Behavior="success" />
|
<ExitCode Value="1638" Behavior="success" />
|
||||||
</ExePackage>
|
</ExePackage>
|
||||||
|
|
||||||
<ExePackage Name="Microsoft Visual C++ 2015-2022 Redistributable - x64"
|
<ExePackage Cache="remove"
|
||||||
Cache="no"
|
PerMachine="yes"
|
||||||
Compressed="no"
|
Permanent="yes"
|
||||||
PerMachine="yes"
|
Vital="yes"
|
||||||
Permanent="yes"
|
|
||||||
Vital="yes"
|
|
||||||
InstallCommand="/install /quiet /norestart"
|
|
||||||
DownloadUrl="$(var.VCREDIST_X64_URL)"
|
|
||||||
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
|
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
|
||||||
DetectCondition="VCREDIST_14_x64 >= v$(var.VCREDIST_VER)">
|
DetectCondition="VCREDIST_14_x64 >= v$(var.VCREDIST_VER)"
|
||||||
|
InstallArguments="/install /quiet /norestart">
|
||||||
|
|
||||||
<RemotePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - x64"
|
<ExePackagePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - x64"
|
||||||
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - x64"
|
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - x64"
|
||||||
Size="$(var.VCREDIST_X64_SIZE)"
|
Size="$(var.VCREDIST_X64_SIZE)"
|
||||||
Version="$(var.VCREDIST_VER)"
|
Version="$(var.VCREDIST_VER)"
|
||||||
Hash="$(var.VCREDIST_X64_SHA1)"/>
|
Hash="$(var.VCREDIST_X64_SHA512)"
|
||||||
|
Name="VC_redist.x64.exe"
|
||||||
|
DownloadUrl="$(var.VCREDIST_X64_URL)" />
|
||||||
|
|
||||||
<!-- Newer version installed is fine -->
|
<!-- Newer version installed is fine -->
|
||||||
<ExitCode Value="1638" Behavior="success" />
|
<ExitCode Value="1638" Behavior="success" />
|
||||||
</ExePackage>
|
</ExePackage>
|
||||||
|
|
||||||
<?if $(var.INCLUDE_ARM64) != 0 ?>
|
<?if $(var.INCLUDE_ARM64) != 0 ?>
|
||||||
<ExePackage Name="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
|
<ExePackage Cache="remove"
|
||||||
Cache="no"
|
PerMachine="yes"
|
||||||
Compressed="no"
|
Permanent="yes"
|
||||||
PerMachine="yes"
|
Vital="yes"
|
||||||
Permanent="yes"
|
|
||||||
Vital="yes"
|
|
||||||
InstallCommand="/install /quiet /norestart"
|
|
||||||
DownloadUrl="$(var.VCREDIST_ARM64_URL)"
|
|
||||||
InstallCondition="NativeMachine = 43620"
|
InstallCondition="NativeMachine = 43620"
|
||||||
DetectCondition="VCREDIST_14_ARM64 >= v$(var.VCREDIST_VER)">
|
DetectCondition="VCREDIST_14_ARM64 >= v$(var.VCREDIST_VER)"
|
||||||
|
InstallArguments="/install /quiet /norestart">
|
||||||
|
|
||||||
<RemotePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
|
<ExePackagePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
|
||||||
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
|
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
|
||||||
Size="$(var.VCREDIST_ARM64_SIZE)"
|
Size="$(var.VCREDIST_ARM64_SIZE)"
|
||||||
Version="$(var.VCREDIST_VER)"
|
Version="$(var.VCREDIST_VER)"
|
||||||
Hash="$(var.VCREDIST_ARM64_SHA1)"/>
|
Hash="$(var.VCREDIST_ARM64_SHA512)"
|
||||||
|
Name="VC_redist.arm64.exe"
|
||||||
|
DownloadUrl="$(var.VCREDIST_ARM64_URL)" />
|
||||||
|
|
||||||
<!-- Newer version installed is fine -->
|
<!-- Newer version installed is fine -->
|
||||||
<ExitCode Value="1638" Behavior="success" />
|
<ExitCode Value="1638" Behavior="success" />
|
||||||
|
@ -147,30 +126,30 @@
|
||||||
<?endif?>
|
<?endif?>
|
||||||
|
|
||||||
<MsiPackage Id="Moonlight_x86"
|
<MsiPackage Id="Moonlight_x86"
|
||||||
SourceFile="$(env.BUILD_ROOT)\build-x86-$(env.BUILD_CONFIG)\Moonlight.msi"
|
SourceFile="$(env.BUILD_ROOT)\build-x86-$(env.BUILD_CONFIG)\Moonlight.msi"
|
||||||
InstallCondition="(NOT VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 332)"
|
Name="Moonlight_x86.msi"
|
||||||
Vital="yes">
|
InstallCondition="(NOT VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 332)"
|
||||||
|
Vital="yes">
|
||||||
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
||||||
<MsiProperty Name="REINSTALLMODE" Value="[REINSTALLMODE]" />
|
|
||||||
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
|
|
||||||
<MsiPackage Id="Moonlight_x64"
|
<MsiPackage Id="Moonlight_x64"
|
||||||
SourceFile="$(env.BUILD_ROOT)\build-x64-$(env.BUILD_CONFIG)\Moonlight.msi"
|
SourceFile="$(env.BUILD_ROOT)\build-x64-$(env.BUILD_CONFIG)\Moonlight.msi"
|
||||||
|
Name="Moonlight_x64.msi"
|
||||||
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
|
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
|
||||||
Vital="yes">
|
Vital="yes">
|
||||||
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
||||||
<MsiProperty Name="REINSTALLMODE" Value="[REINSTALLMODE]" />
|
|
||||||
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
|
|
||||||
<?if $(var.INCLUDE_ARM64) != 0 ?>
|
<?if $(var.INCLUDE_ARM64) != 0 ?>
|
||||||
<MsiPackage Id="Moonlight_arm64"
|
<MsiPackage Id="Moonlight_arm64"
|
||||||
SourceFile="$(env.BUILD_ROOT)\build-arm64-$(env.BUILD_CONFIG)\Moonlight.msi"
|
SourceFile="$(env.BUILD_ROOT)\build-arm64-$(env.BUILD_CONFIG)\Moonlight.msi"
|
||||||
|
Name="Moonlight_arm64.msi"
|
||||||
InstallCondition="NativeMachine = 43620"
|
InstallCondition="NativeMachine = 43620"
|
||||||
Vital="yes">
|
Vital="yes">
|
||||||
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
|
||||||
<MsiProperty Name="REINSTALLMODE" Value="[REINSTALLMODE]" />
|
|
||||||
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
<?endif?>
|
<?endif?>
|
||||||
|
|
|
@ -1,12 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<Project Sdk="WixToolset.Sdk/4.0.1">
|
||||||
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ProductVersion>3.10</ProductVersion>
|
|
||||||
<ProjectGuid>466fa35d-4be4-40ef-9ce5-afadc3b63bc5</ProjectGuid>
|
|
||||||
<SchemaVersion>2.0</SchemaVersion>
|
|
||||||
<OutputName>MoonlightSetup</OutputName>
|
|
||||||
<OutputType>Bundle</OutputType>
|
<OutputType>Bundle</OutputType>
|
||||||
<DefineSolutionProperties>false</DefineSolutionProperties>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||||
<DefineConstants>Debug</DefineConstants>
|
<DefineConstants>Debug</DefineConstants>
|
||||||
|
@ -16,29 +10,7 @@
|
||||||
<IntermediateOutputPath>$(BUILD_FOLDER)\</IntermediateOutputPath>
|
<IntermediateOutputPath>$(BUILD_FOLDER)\</IntermediateOutputPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Bundle.wxs" />
|
<PackageReference Include="WixToolset.Bal.wixext" Version="4.*" />
|
||||||
|
<PackageReference Include="WixToolset.Util.wixext" Version="4.*" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<WixExtension Include="WixBalExtension">
|
|
||||||
<HintPath>$(WixExtDir)\WixBalExtension.dll</HintPath>
|
|
||||||
<Name>WixBalExtension</Name>
|
|
||||||
</WixExtension>
|
|
||||||
<WixExtension Include="WixUtilExtension">
|
|
||||||
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
|
|
||||||
<Name>WixUtilExtension</Name>
|
|
||||||
</WixExtension>
|
|
||||||
</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>
|
</Project>
|
|
@ -1,88 +1,124 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
|
<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
|
||||||
<!-- This file has been copied from C:\Program Files (x86)\WiX Toolset v3.11\SDK\themes\RtfTheme.xml and then altered. -->
|
<!-- This file has been copied from https://github.com/wixtoolset/wix/blob/cef14c6055f85e470ff9ce7a33b53e80d1160ba6/src/ext/Bal/wixstdba/Resources/RtfTheme.xml and then altered. -->
|
||||||
|
|
||||||
<Theme xmlns="http://wixtoolset.org/schemas/thmutil/2010">
|
<Theme xmlns="http://wixtoolset.org/schemas/v4/thmutil">
|
||||||
<Window Width="485" Height="300" HexStyle="100a0000" FontId="0">#(loc.Caption)</Window>
|
<Font Id="0" Height="-12" Weight="500" Foreground="windowtext" Background="window">Segoe UI</Font>
|
||||||
<Font Id="0" Height="-12" Weight="500" Foreground="000000" Background="FFFFFF">Segoe UI</Font>
|
<Font Id="1" Height="-24" Weight="500" Foreground="windowtext">Segoe UI</Font>
|
||||||
<Font Id="1" Height="-24" Weight="500" Foreground="000000">Segoe UI</Font>
|
<Font Id="2" Height="-22" Weight="500" Foreground="graytext">Segoe UI</Font>
|
||||||
<Font Id="2" Height="-22" Weight="500" Foreground="666666">Segoe UI</Font>
|
<Font Id="3" Height="-12" Weight="500" Foreground="windowtext" Background="window">Segoe UI</Font>
|
||||||
<Font Id="3" Height="-12" Weight="500" Foreground="000000" Background="FFFFFF">Segoe UI</Font>
|
|
||||||
<Font Id="4" Height="-12" Weight="500" Foreground="ff0000" Background="FFFFFF" Underline="yes">Segoe UI</Font>
|
|
||||||
|
|
||||||
<Image X="11" Y="11" Width="64" Height="64" ImageFile="logo.png" Visible="yes"/>
|
<Window Width="485" Height="300" HexStyle="100a0000" FontId="0" Caption="#(loc.Caption)">
|
||||||
<Text X="80" Y="11" Width="-11" Height="64" FontId="1" Visible="yes" DisablePrefix="yes">#(loc.Title)</Text>
|
<ImageControl X="11" Y="11" Width="64" Height="64" ImageFile="logo.png" Visible="yes"/>
|
||||||
|
<Label X="80" Y="11" Width="-11" Height="64" FontId="1" Visible="yes" DisablePrefix="yes">#(loc.Title)</Label>
|
||||||
|
|
||||||
<Page Name="Help">
|
<Page Name="Help">
|
||||||
<Text X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.HelpHeader)</Text>
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.HelpHeader)</Label>
|
||||||
<Text X="11" Y="112" Width="-11" Height="-35" FontId="3" DisablePrefix="yes">#(loc.HelpText)</Text>
|
<Label X="11" Y="112" Width="-11" Height="-35" FontId="3" DisablePrefix="yes">#(loc.HelpText)</Label>
|
||||||
<Button Name="HelpCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.HelpCloseButton)</Button>
|
<Button Name="HelpCloseButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
</Page>
|
<Text>#(loc.HelpCloseButton)</Text>
|
||||||
<Page Name="Install">
|
<CloseWindowAction />
|
||||||
<Richedit Name="EulaRichedit" X="11" Y="80" Width="-11" Height="-70" TabStop="yes" FontId="0" HexStyle="0x800000" />
|
</Button>
|
||||||
<Checkbox Name="EulaAcceptCheckbox" X="-11" Y="-41" Width="260" Height="17" TabStop="yes" FontId="3" HideWhenDisabled="yes">#(loc.InstallAcceptCheckbox)</Checkbox>
|
</Page>
|
||||||
<Button Name="OptionsButton" X="-171" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.InstallOptionsButton)</Button>
|
<Page Name="Loading">
|
||||||
<Button Name="InstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallInstallButton)</Button>
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes" Visible="no" Name="CheckingForUpdatesLabel" />
|
||||||
<Button Name="WelcomeCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallCloseButton)</Button>
|
</Page>
|
||||||
</Page>
|
<Page Name="Install">
|
||||||
<Page Name="Options">
|
<Richedit Name="EulaRichedit" X="11" Y="80" Width="-11" Height="-70" TabStop="yes" FontId="0" HexStyle="800000" />
|
||||||
<Text X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.OptionsHeader)</Text>
|
<Checkbox Name="EulaAcceptCheckbox" X="-11" Y="-41" Width="260" Height="17" TabStop="yes" FontId="3" HideWhenDisabled="yes">#(loc.InstallAcceptCheckbox)</Checkbox>
|
||||||
<Text X="11" Y="121" Width="-11" Height="17" FontId="3" DisablePrefix="yes">#(loc.OptionsLocationLabel)</Text>
|
<Button Name="InstallUpdateButton" X="11" Y="-11" Width="200" Height="23" TabStop="yes" FontId="0" EnableCondition="WixStdBAUpdateAvailable" HideWhenDisabled="yes">#(loc.UpdateButton)</Button>
|
||||||
<Editbox Name="FolderEditbox" X="11" Y="143" Width="-91" Height="21" TabStop="yes" FontId="3" FileSystemAutoComplete="yes" />
|
<Button Name="OptionsButton" X="-171" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" VisibleCondition="NOT WixStdBASuppressOptionsUI">
|
||||||
<Button Name="BrowseButton" X="-11" Y="142" Width="75" Height="23" TabStop="yes" FontId="3">#(loc.OptionsBrowseButton)</Button>
|
<Text>#(loc.InstallOptionsButton)</Text>
|
||||||
|
<ChangePageAction Page="Options" />
|
||||||
|
</Button>
|
||||||
|
<Button Name="InstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallInstallButton)</Button>
|
||||||
|
<Button Name="InstallCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
|
<Text>#(loc.InstallCancelButton)</Text>
|
||||||
|
<CloseWindowAction />
|
||||||
|
</Button>
|
||||||
|
</Page>
|
||||||
|
<Page Name="Options">
|
||||||
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.OptionsHeader)</Label>
|
||||||
|
<Label X="11" Y="121" Width="-11" Height="17" FontId="3" DisablePrefix="yes">#(loc.OptionsLocationLabel)</Label>
|
||||||
|
<Editbox Name="InstallFolder" X="11" Y="143" Width="-91" Height="21" TabStop="yes" FontId="3" FileSystemAutoComplete="yes" />
|
||||||
|
<Button Name="BrowseButton" X="-11" Y="142" Width="75" Height="23" TabStop="yes" FontId="3">
|
||||||
|
<Text>#(loc.OptionsBrowseButton)</Text>
|
||||||
|
<BrowseDirectoryAction VariableName="InstallFolder" />
|
||||||
|
</Button>
|
||||||
|
|
||||||
<!-- Added a checkbox for user to choose if shortcut is placed on
|
<!-- Added a checkbox for user to choose if shortcut is placed on
|
||||||
desktop or not. Checkbox's current state (checked/unchecked) is
|
desktop or not. Checkbox's current state (checked/unchecked) is
|
||||||
read from a variable which has same name as this checkbox. The
|
read from a variable which has same name as this checkbox. The
|
||||||
variable is defined in Bundle.wxs. -->
|
variable is defined in Bundle.wxs. -->
|
||||||
<Checkbox Name="AddDesktopShortcutCheckbox" X="11" Y="178" Width="250" Height="17" TabStop="yes" FontId="3" HideWhenDisabled="yes">Add desktop shortcut</Checkbox>
|
<Checkbox Name="AddDesktopShortcutCheckbox" X="11" Y="178" Width="250" Height="17" TabStop="yes" FontId="3" HideWhenDisabled="yes">Add desktop shortcut</Checkbox>
|
||||||
|
|
||||||
<Button Name="OptionsOkButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.OptionsOkButton)</Button>
|
<Button Name="OptionsOkButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
<Button Name="OptionsCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.OptionsCancelButton)</Button>
|
<Text>#(loc.OptionsOkButton)</Text>
|
||||||
</Page>
|
<ChangePageAction Page="Install" />
|
||||||
<Page Name="FilesInUse">
|
</Button>
|
||||||
<Text X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.FilesInUseHeader)</Text>
|
<Button Name="OptionsCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
<Text X="11" Y="121" Width="-11" Height="34" FontId="3" DisablePrefix="yes">#(loc.FilesInUseLabel)</Text>
|
<Text>#(loc.OptionsCancelButton)</Text>
|
||||||
<Text Name="FilesInUseText" X="11" Y="150" Width="-11" Height="-86" FontId="3" DisablePrefix="yes" HexStyle="0x0000C000"></Text>
|
<ChangePageAction Page="Install" Cancel="yes" />
|
||||||
|
</Button>
|
||||||
<Button Name="FilesInUseCloseRadioButton" X="11" Y="-60" Width="-11" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes" HexStyle="0x000009">#(loc.FilesInUseCloseRadioButton)</Button>
|
</Page>
|
||||||
<Button Name="FilesInUseDontCloseRadioButton" X="11" Y="-40" Width="-11" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes" HexStyle="0x000009">#(loc.FilesInUseDontCloseRadioButton)</Button>
|
<Page Name="Progress">
|
||||||
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.ProgressHeader)</Label>
|
||||||
<Button Name="FilesInUseOkButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.FilesInUseOkButton)</Button>
|
<Label X="11" Y="121" Width="70" Height="17" FontId="3" DisablePrefix="yes">#(loc.ProgressLabel)</Label>
|
||||||
<Button Name="FilesInUseCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.FilesInUseCancelButton)</Button>
|
<Label Name="OverallProgressPackageText" X="85" Y="121" Width="-11" Height="17" FontId="3" DisablePrefix="yes">#(loc.OverallProgressPackageText)</Label>
|
||||||
</Page>
|
<Progressbar Name="OverallCalculatedProgressbar" X="11" Y="143" Width="-11" Height="15" />
|
||||||
<Page Name="Progress">
|
<Button Name="ProgressCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.ProgressCancelButton)</Button>
|
||||||
<Text X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.ProgressHeader)</Text>
|
</Page>
|
||||||
<Text X="11" Y="121" Width="70" Height="17" FontId="3" DisablePrefix="yes">#(loc.ProgressLabel)</Text>
|
<Page Name="Modify">
|
||||||
<Text Name="OverallProgressPackageText" X="85" Y="121" Width="-11" Height="17" FontId="3" DisablePrefix="yes">#(loc.OverallProgressPackageText)</Text>
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.ModifyHeader)</Label>
|
||||||
<Progressbar Name="OverallCalculatedProgressbar" X="11" Y="143" Width="-11" Height="15" />
|
<Button Name="ModifyUpdateButton" X="11" Y="-11" Width="200" Height="23" TabStop="yes" FontId="0" EnableCondition="WixStdBAUpdateAvailable" HideWhenDisabled="yes">#(loc.UpdateButton)</Button>
|
||||||
<Button Name="ProgressCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.ProgressCancelButton)</Button>
|
<Button Name="RepairButton" X="-171" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.ModifyRepairButton)</Button>
|
||||||
</Page>
|
<Button Name="UninstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.ModifyUninstallButton)</Button>
|
||||||
<Page Name="Modify">
|
<Button Name="ModifyCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
<Text X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">#(loc.ModifyHeader)</Text>
|
<Text>#(loc.ModifyCancelButton)</Text>
|
||||||
<Button Name="RepairButton" X="-171" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.ModifyRepairButton)</Button>
|
<CloseWindowAction />
|
||||||
<Button Name="UninstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.ModifyUninstallButton)</Button>
|
</Button>
|
||||||
<Button Name="ModifyCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.ModifyCloseButton)</Button>
|
</Page>
|
||||||
</Page>
|
<Page Name="Success">
|
||||||
<Page Name="Success">
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">
|
||||||
<Text Name="SuccessHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.SuccessHeader)</Text>
|
<Text>#(loc.SuccessHeader)</Text>
|
||||||
<Text Name="SuccessInstallHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.SuccessInstallHeader)</Text>
|
<Text Condition="WixBundleAction = 2">#(loc.SuccessLayoutHeader)</Text>
|
||||||
<Text Name="SuccessRepairHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.SuccessRepairHeader)</Text>
|
<Text Condition="WixBundleAction = 3">#(loc.SuccessUnsafeUninstallHeader)</Text>
|
||||||
<Text Name="SuccessUninstallHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.SuccessUninstallHeader)</Text>
|
<Text Condition="WixBundleAction = 4">#(loc.SuccessUninstallHeader)</Text>
|
||||||
<Button Name="LaunchButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.SuccessLaunchButton)</Button>
|
<Text Condition="WixBundleAction = 5">#(loc.SuccessCacheHeader)</Text>
|
||||||
<Text Name="SuccessRestartText" X="-11" Y="-51" Width="400" Height="34" FontId="3" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.SuccessRestartText)</Text>
|
<Text Condition="WixBundleAction = 6">#(loc.SuccessInstallHeader)</Text>
|
||||||
<Button Name="SuccessRestartButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.SuccessRestartButton)</Button>
|
<Text Condition="WixBundleAction = 7">#(loc.SuccessModifyHeader)</Text>
|
||||||
<Button Name="SuccessCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.SuccessCloseButton)</Button>
|
<Text Condition="WixBundleAction = 8">#(loc.SuccessRepairHeader)</Text>
|
||||||
</Page>
|
</Label>
|
||||||
<Page Name="Failure">
|
<Button Name="LaunchButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.SuccessLaunchButton)</Button>
|
||||||
<Text Name="FailureHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.FailureHeader)</Text>
|
<Label X="-11" Y="-51" Width="400" Height="34" FontId="3" DisablePrefix="yes" VisibleCondition="WixStdBARestartRequired">
|
||||||
<Text Name="FailureInstallHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.FailureInstallHeader)</Text>
|
<Text>#(loc.SuccessRestartText)</Text>
|
||||||
<Text Name="FailureUninstallHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.FailureUninstallHeader)</Text>
|
<Text Condition="WixBundleAction = 3">#(loc.SuccessUninstallRestartText)</Text>
|
||||||
<Text Name="FailureRepairHeader" X="11" Y="80" Width="-11" Height="30" FontId="2" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.FailureRepairHeader)</Text>
|
</Label>
|
||||||
<Hypertext Name="FailureLogFileLink" X="11" Y="121" Width="-11" Height="42" FontId="3" TabStop="yes" HideWhenDisabled="yes">#(loc.FailureHyperlinkLogText)</Hypertext>
|
<Button Name="SuccessRestartButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.SuccessRestartButton)</Button>
|
||||||
<Hypertext Name="FailureMessageText" X="22" Y="163" Width="-11" Height="51" FontId="3" TabStop="yes" HideWhenDisabled="yes" />
|
<Button Name="SuccessCloseButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
<Text Name="FailureRestartText" X="-11" Y="-51" Width="400" Height="34" FontId="3" HideWhenDisabled="yes" DisablePrefix="yes">#(loc.FailureRestartText)</Text>
|
<Text>#(loc.SuccessCloseButton)</Text>
|
||||||
<Button Name="FailureRestartButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.FailureRestartButton)</Button>
|
<CloseWindowAction />
|
||||||
<Button Name="FailureCloseButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.FailureCloseButton)</Button>
|
</Button>
|
||||||
</Page>
|
</Page>
|
||||||
|
<Page Name="Failure">
|
||||||
|
<Label X="11" Y="80" Width="-11" Height="30" FontId="2" DisablePrefix="yes">
|
||||||
|
<Text>#(loc.FailureHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 2">#(loc.FailureLayoutHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 3">#(loc.FailureUnsafeUninstallHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 4">#(loc.FailureUninstallHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 5">#(loc.FailureCacheHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 6">#(loc.FailureInstallHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 7">#(loc.FailureModifyHeader)</Text>
|
||||||
|
<Text Condition="WixBundleAction = 8">#(loc.FailureRepairHeader)</Text>
|
||||||
|
</Label>
|
||||||
|
<Hypertext Name="FailureLogFileLink" X="11" Y="121" Width="-11" Height="42" FontId="3" TabStop="yes" HideWhenDisabled="yes">#(loc.FailureHyperlinkLogText)</Hypertext>
|
||||||
|
<Hypertext Name="FailureMessageText" X="22" Y="163" Width="-11" Height="51" FontId="3" TabStop="yes" HideWhenDisabled="yes" />
|
||||||
|
<Label X="-11" Y="-51" Width="400" Height="34" FontId="3" DisablePrefix="yes" VisibleCondition="WixStdBARestartRequired">#(loc.FailureRestartText)</Label>
|
||||||
|
<Button Name="FailureRestartButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.FailureRestartButton)</Button>
|
||||||
|
<Button Name="FailureCloseButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">
|
||||||
|
<Text>#(loc.FailureCloseButton)</Text>
|
||||||
|
<CloseWindowAction />
|
||||||
|
</Button>
|
||||||
|
</Page>
|
||||||
|
</Window>
|
||||||
</Theme>
|
</Theme>
|
||||||
|
|
Loading…
Reference in a new issue