forked from MPExtended/MPExtended
/
Product.wxs
139 lines (124 loc) · 6.86 KB
/
Product.wxs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension"
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<!--
Copyright (C) 2011-2013 MPExtended Developers, http://www.mpextended.com/
The use and distribution terms for this software are covered by the
Common Public License 1.0 (http://opensource.org/licenses/cpl1.0.php)
which can be found in the file CPL.TXT at the root of this distribution.
By using this software in any fashion, you are agreeing to be bound by
the terms of this license.
You must not remove this notice, or any other, from this software.
-->
<Product
Id="*"
UpgradeCode="1911d293-8311-457a-bd09-296fec9bc368"
Name="MPExtended WebMediaPortal"
Language="1033"
Version="!(bind.FileVersion.MPExtended.Libraries.Service.dll)"
Manufacturer="MPExtended">
<Package Manufacturer="MPExtended" InstallerVersion="300" Compressed="yes" />
<!-- Enable this for debugging (avoids creating a restore point, makes the installer a lot faster) -->
<!-- <Property Id="MSIFASTINSTALL" Value="3" /> -->
<!-- Project general -->
<Media Id="1" Cabinet="data.cab" EmbedCab="yes" />
<!-- Disallow downgrades and support upgrades -->
<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="Cannot downgrade, try a reinstallation." AllowSameVersionUpgrades="yes" />
<Property Id="PREVIOUSVERSIONINSTALLED" Secure="yes" />
<Upgrade Id="1911d293-8311-457a-bd09-296fec9bc368">
<UpgradeVersion Property="PREVIOUSVERSIONINSTALLED"
IncludeMinimum="yes" Minimum="0.0.0.0"
IncludeMaximum="no" Maximum="!(bind.FileVersion.MPExtended.Libraries.Service.dll)" />
</Upgrade>
<!-- The icon -->
<Icon Id="MPExtendedIcon" SourceFile="$(var.SolutionDir)\Libraries\Artwork\MpExtl_Icon_256.ico" />
<Property Id="ARPPRODUCTICON" Value="MPExtendedIcon" />
<!-- Require .NET 4 -->
<PropertyRef Id="NETFRAMEWORK40FULL"/>
<Condition Message="MPExtended WebMediaPortal requires Microsoft .NET Framework 4.0 Full Runtime. Please install the .NET Framework and run this installer again.">
<![CDATA[Installed OR NETFRAMEWORK40FULL]]>
</Condition>
<!-- Include custom action library -->
<Binary Id="CustomActionLibrary" SourceFile="$(var.MPExtended.Installers.CustomActions.TargetDir)\MPExtended.Installers.CustomActions.CA.dll" />
<!-- Remove data files on uninstall -->
<CustomAction Id="RemoveDataFiles" BinaryKey="CustomActionLibrary" DllEntry="RemoveWebMediaPortalData" Execute="immediate" Return="check" />
<InstallExecuteSequence>
<Custom Action="RemoveDataFiles" Before="InstallFinalize"><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
</InstallExecuteSequence>
<!-- Require IIS Express -->
<Property Id="IISEXPRESS75INSTALLED">
<RegistrySearch Id="IISExpress75InstalledSearch" Type="raw" Win64="no"
Root="HKLM" Key="SOFTWARE\Microsoft\IISExpress\7.5" Name="InstallPath" />
</Property>
<Property Id="IISEXPRESS8INSTALLED">
<RegistrySearch Id="IISExpress8InstalledSearch" Type="raw" Win64="no"
Root="HKLM" Key="SOFTWARE\Microsoft\IISExpress\8.0" Name="InstallPath" />
</Property>
<Property Id="IISEXPRESS85INSTALLED">
<RegistrySearch Id="IISExpress85InstalledSearch" Type="raw" Win64="no"
Root="HKLM" Key="SOFTWARE\Microsoft\IISExpress\8.5" Name="InstallPath" />
</Property>
<Property Id="IISEXPRESS10INSTALLED">
<RegistrySearch Id="IISExpress10InstalledSearch" Type="raw" Win64="no"
Root="HKLM" Key="SOFTWARE\Microsoft\IISExpress\10.0" Name="InstallPath" />
</Property>
<Condition Message="The installer has detected that the requirement IIS Express 7.5+ is not installed. Please install IIS Express 7.5+ and run the installer again.">
<![CDATA[Installed OR IISEXPRESS75INSTALLED OR IISEXPRESS8INSTALLED OR IISEXPRESS85INSTALLED OR IISEXPRESS10INSTALLED]]>
</Condition>
<!--
<Condition Message="The installer has detected that IIS Express 8 is installed. Unfortunately, IIS Express 8 isn't supported at this time. Please install IIS Express 7.5 and run the installer again.">
<![CDATA[Installed OR IISEXPRESS75INSTALLED OR NOT IISEXPRESS8INSTALLED]]>
</Condition>
-->
<!-- Service -->
<DirectoryRef Id="InstallDirectory">
<Component Id="Component_Hosting" Guid="72a08c6b-5611-4d41-ab8e-abb1a7315641">
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\MPExtended.ServiceHosts.WebMediaPortal.exe" KeyPath="yes" Id="MainService"/>
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\MPExtended.ServiceHosts.WebMediaPortal.exe.config" />
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\MPExtended.Libraries.Service.dll"
Id="Hosting_MPExtended.Libraries.Service.dll" />
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\MPExtended.Libraries.Service.Config.dll"
Id="Hosting_MPExtended.Libraries.Service.Config.dll" />
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\MPExtended.Libraries.Service.Config.XmlSerializers.dll"
Id="Hosting_MPExtended.Libraries.Service.Config.XmlSerializers.dll" />
<File Source="$(var.MPExtended.ServiceHosts.WebMediaPortal.TargetDir)\IISExpressTemplate.config" />
<ServiceInstall
Id="InstallService"
Type="ownProcess"
Vital="yes"
Name="MPExtended WebMediaPortal"
DisplayName="MPExtended WebMediaPortal"
Description="Webinterface for MediaPortal"
Start="auto"
ErrorControl="ignore"
Interactive="no"
Account="LocalSystem" />
<ServiceControl
Id="StartService"
Start="install"
Stop="both"
Remove="uninstall"
Name="MPExtended WebMediaPortal"
Wait="yes" />
<fire:FirewallException
IgnoreFailure="yes"
Id="FirewallException"
Name="MPExtended WebMediaPortal"
Scope="any"
Profile="all"
Protocol="tcp"
Port="8080" />
</Component>
</DirectoryRef>
<!-- User interfacer -->
<Property Id="WIXUI_INSTALLDIR" Value="MPEXTENDEDDIRECTORY" />
<UIRef Id="GeneralUI"/>
<UIRef Id="WixUI_Common" />
<!-- Custom images -->
<WixVariable Id="WixUIBannerBmp" Value="$(var.SolutionDir)\Libraries\Installer\banner.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="$(var.SolutionDir)\Libraries\Installer\dialog.bmp" />
<Binary Id="ExitDialogBitmap" SourceFile="$(var.SolutionDir)\Libraries\Installer\exitdialog.bmp" />
<FeatureRef Id="Feature_WebMP" />
</Product>
</Wix>