ProxySync/SetupWIX/Product.wxs
2017-01-25 11:24:22 +01:00

112 lines
4.2 KiB
XML

<?include Config.wxi?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Product Id="*" Name="$(var.ProductName)" Language="1031" Codepage="1252" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
<Package
Id="*"
Keywords="Installer"
Description="$(var.Description)"
Comments="$(var.Comments)"
Manufacturer="$(var.Manufacturer)"
InstallerVersion="100"
Languages="1031"
Compressed="yes"
SummaryCodepage="1252"
/>
<!-- Muss vorhanden sein, muss nicht geändert werden -->
<Media Id='1' Cabinet='$(var.ProgramName).cab' EmbedCab='yes' DiskPrompt='$(var.ProgramName)' />
<Property Id='DiskPrompt' Value="$(var.ProgramName) Install" />
<!-- Legt fest ob Downgrades erlaubt sind und die Nachricht, wenn dies versucht wird -->
<MajorUpgrade
AllowDowngrades="no"
AllowSameVersionUpgrades="no"
DowngradeErrorMessage="Eine neuere Version von [ProductName] ist bereits installiert. Das Setup wird beendet."
/>
<!-- Legt die Bedingungen für Updates des Programms fest-->
<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion
Minimum="1.0.0.0" Maximum="99.0.0.0"
Property="PREVIOUSVERSIONSINSTALLED"
IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>
<!-- Legt das Icon fest -->
<Icon Id="AppIcon" SourceFile="$(var.ProgramName).exe" />
<!-- Zeige Icon in Systemsteuerung > Programme entfernen -->
<Property Id="ARPPRODUCTICON" Value="AppIcon" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLDIR" Name="$(var.ProductName)"/>
</Directory>
</Directory>
<DirectoryRef Id="INSTALLDIR">
<Component Id="MainApplicationExe" Guid="{9C3ECF39-3CE2-4E7A-BF2A-DD48704393ED}">
<File Id="MainApplicationExe" Name="$(var.ProgramName).exe" KeyPath="yes" Checksum="yes"/>
<ServiceInstall
Id="ServiceInstaller"
Type="ownProcess"
Name="$(var.ProgramName)"
DisplayName="$(var.ProductName)"
Description="$(var.Description)"
Start="auto"
ErrorControl="normal" />
<ServiceControl Id="StartService" Start="install" Stop="both" Remove="uninstall" Name="$(var.ProgramName)" Wait="yes" />
</Component>
<Component Id="MainApplicationConfig" Guid="{9D2B770C-8706-462F-A6D5-EB53C7BAA58F}">
<File Id="MainApplicationConfig" Name="$(var.ProgramName).exe.config" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="RegistryKeys" Guid="{DD65998B-07A6-4CA9-8C93-08E225769ADA}">
<RegistryKey Root="HKCU" Key="Software">
<RegistryKey Key="[Manufacturer]">
<RegistryKey Key="[ProductName]" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes" Id="REGKEYINSTALLDIR">
<RegistryValue Type="string" Value="[INSTALLDIR]" Name="Path" />
</RegistryKey>
</RegistryKey>
</RegistryKey>
<util:RemoveFolderEx Id="RemoveApplicationFolder" On="uninstall" Property="APPLICATIONFOLDER" />
</Component>
</DirectoryRef>
<Feature Id="MainApplication" Title="Main Application" Level="1">
<ComponentRef Id="MainApplicationExe" />
<ComponentRef Id="MainApplicationConfig"/>
<ComponentRef Id="RegistryKeys"/>
</Feature>
<!-- Legt das Standard-Installationsverzeichnis fest-->
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<UI>
<UIRef Id="WixUI_InstallDir" />
<UIRef Id="WixUI_ErrorProgressText" />
<Publish Dialog="WelcomeDlg"
Control="Next"
Event="NewDialog"
Value="InstallDirDlg"
Order="2">1</Publish>
<Publish Dialog="InstallDirDlg"
Control="Back"
Event="NewDialog"
Value="WelcomeDlg"
Order="2">1</Publish>
</UI>
<Property Id="APPLICATIONFOLDER">
<RegistrySearch Key="Software\[Manufacturer]\[ProductName]" Root="HKCU" Type="raw" Id="APPLICATIONFOLDER_REGSEARCH" Name="Path" />
</Property>
</Product>
</Wix>