SEBWIN-300: Added SEB file extension and URL protocols to installer.

This commit is contained in:
dbuechel 2019-07-30 15:45:20 +02:00
parent 18ac56f1c6
commit ff0f85d9f9
8 changed files with 38 additions and 16 deletions

View file

@ -1,4 +1,5 @@
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
@ -12,5 +13,24 @@
<xsl:text>MainExecutable</xsl:text>
</xsl:attribute>
</xsl:copy>
<wix:File Id="ApplicationIconFile" Source="Resources\Application.ico" />
<wix:File Id="ConfigurationIconFile" Source="Resources\Configuration.ico" />
<wix:ProgId Id="ConfigurationFileExtension" Description="SEB Configuration File" Icon="ConfigurationIconFile" Advertise="no">
<wix:Extension Id="seb" ContentType="application/seb" Advertise="no">
<wix:Verb Id="open" Command="Open" Argument="&quot;%1&quot;" TargetFile="MainExecutable" />
</wix:Extension>
</wix:ProgId>
<wix:RegistryKey Root="HKCR" Key="seb">
<wix:RegistryValue Value="URL:Safe Exam Browser Protocol" Type="string" />
<wix:RegistryValue Name="URL Protocol" Value="" Type="string" />
<wix:RegistryValue Key="DefaultIcon" Value="[#ApplicationIconFile]" Type="string" />
<wix:RegistryValue Key="shell\open\command" Value="&quot;[ApplicationDirectory]$(var.SafeExamBrowser.Runtime.TargetFileName)&quot; &quot;%1&quot;" Type="string" />
</wix:RegistryKey>
<wix:RegistryKey Root="HKCR" Key="sebs">
<wix:RegistryValue Value="URL:Safe Exam Browser Secure Protocol" Type="string" />
<wix:RegistryValue Name="URL Protocol" Value="" Type="string" />
<wix:RegistryValue Key="DefaultIcon" Value="[#ApplicationIconFile]" Type="string" />
<wix:RegistryValue Key="shell\open\command" Value="&quot;[ApplicationDirectory]$(var.SafeExamBrowser.Runtime.TargetFileName)&quot; &quot;%1&quot;" Type="string" />
</wix:RegistryKey>
</xsl:template>
</xsl:stylesheet>

View file

@ -1,4 +1,5 @@
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>

View file

@ -3,7 +3,7 @@
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="SafeExamBrowser">
<Directory Id="InstallFolder" Name="SafeExamBrowser">
<Directory Id="ApplicationDirectory" Name="Application" />
<Directory Id="ResetDirectory" Name="Reset" />
<!--<Directory Id="ServiceDirectory" Name="Service" />-->

View file

@ -6,7 +6,7 @@
<MediaTemplate EmbedCab="yes" />
<UIRef Id="WixUI_Minimal" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." AllowSameVersionUpgrades="yes" />
<Icon Id="ApplicationIcon" SourceFile="Resources\SafeExamBrowser.ico" />
<Icon Id="ApplicationIcon" SourceFile="Resources\Application.ico" />
<Property Id="ARPPRODUCTICON" Value="ApplicationIcon" />
<WixVariable Id="WixUILicenseRtf" Value="Resources\License.rtf" />
<!-- <WixVariable Id="WixUIDialogBmp" Value="Resources\Dialog.bmp" /> 493 × 312 -->
@ -15,7 +15,7 @@
<ComponentGroupRef Id="ApplicationComponents" />
<ComponentGroupRef Id="ResetComponents" />
<!--<ComponentGroupRef Id="ServiceComponents" />-->
<ComponentRef Id="ShortcutComponents" />
<ComponentRef Id="ShortcutComponent" />
</Feature>
</Product>
</Wix>

View file

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 361 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 KiB

View file

@ -72,20 +72,21 @@
<Content Include="Components\Application.xslt" />
<Content Include="Components\Reset.xslt" />
<Content Include="Resources\License.rtf" />
<Content Include="Resources\SafeExamBrowser.ico" />
<Content Include="Resources\Application.ico" />
<Content Include="Resources\Configuration.ico" />
</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>
<PropertyGroup>
<PostBuildEvent>git -C $(SolutionDir) checkout -- Setup/Components/Application.wxs
git -C $(SolutionDir) checkout -- Setup/Components/Reset.wxs</PostBuildEvent>
</PropertyGroup>
<PropertyGroup>
<PreBuildEvent>"$(WIX)bin\heat.exe" dir "$(SolutionDir)SafeExamBrowser.ResetUtility\bin\$(PlatformName)\$(ConfigurationName)" -nologo -ag -g1 -srd -cg ResetComponents -dr ResetDirectory -sfrag -var var.SafeExamBrowser.ResetUtility.TargetDir -out $(ProjectDir)Components\Reset.wxs -t $(ProjectDir)Components\Reset.xslt
"$(WIX)bin\heat.exe" dir "$(SolutionDir)SafeExamBrowser.Runtime\bin\$(PlatformName)\$(ConfigurationName)" -nologo -ag -g1 -srd -cg ApplicationComponents -dr ApplicationDirectory -sfrag -var var.SafeExamBrowser.Runtime.TargetDir -out $(ProjectDir)Components\Application.wxs -t $(ProjectDir)Components\Application.xslt</PreBuildEvent>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>git -C $(SolutionDir) checkout -- Setup/Components/Application.wxs
git -C $(SolutionDir) checkout -- Setup/Components/Reset.wxs</PostBuildEvent>
</PropertyGroup>
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.

View file

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<Component Id="ShortcutComponents" Guid="F6B8A57A-84BB-4264-96C5-3DD59F745E58" Directory="StartMenuDirectory">
<Component Id="ShortcutComponent" Directory="StartMenuDirectory">
<Shortcut Id="ApplicationShortcut" Name="Safe Exam Browser" Icon="ApplicationIcon" IconIndex="0" Advertise="no" Directory="ProgramMenuFolder"
Target="[ApplicationDirectory]\$(var.SafeExamBrowser.Runtime.TargetFileName)" WorkingDirectory="ApplicationDirectory"
Description="Starts the main application." />
Target="[ApplicationDirectory]\$(var.SafeExamBrowser.Runtime.TargetFileName)" WorkingDirectory="ApplicationDirectory"
Description="Starts the main application." />
<Shortcut Id="ResetUtilityShortcut" Name="SEB Reset Utility" Icon="ApplicationIcon" IconIndex="0" Advertise="no" Directory="StartMenuDirectory"
Target="[ResetDirectory]\$(var.SafeExamBrowser.ResetUtility.TargetFileName)" WorkingDirectory="ResetDirectory"
Description="Provides options to reset any changes made by the main application." />
Target="[ResetDirectory]\$(var.SafeExamBrowser.ResetUtility.TargetFileName)" WorkingDirectory="ResetDirectory"
Description="Provides options to reset any changes made by the main application." />
<RemoveFolder Id="StartMenuDirectory" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Name="installed" Type="integer" Value="1" KeyPath="yes" />
</Component>
</Fragment>
</Wix>