source: nscp/helpers/installer/Product.wxs @ 3d782f8

0.4.00.4.10.4.2stable
Last change on this file since 3d782f8 was 3d782f8, checked in by Michael Medin <michael@…>, 4 years ago

Fixed an issue with firewall exception in the installer

  • Property mode set to 100644
File size: 21.5 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
3        <!--
4        <?define boost = "false" ?>
5         -->
6        <?ifdef var.boost ?>
7                <?define PlatForm = "$(var.arch)" ?>
8                <?define Mode = "Nightly" ?>
9                <?define SysTray.ConfigurationName = "BOOST BUILD" ?>
10        <?else?>
11                <?if "$(var.SysTray.ConfigurationName)" = "Debug|Win32"?>
12                        <?define PlatForm = "Win32" ?>
13                        <?define Mode = "Debug" ?>
14                <?elseif "$(var.SysTray.ConfigurationName)" = "Debug|x64"?>
15                        <?define PlatForm = "x64" ?>
16                        <?define Mode = "Debug" ?>
17                <?elseif "$(var.SysTray.ConfigurationName)" = "Nightly|Win32"?>
18                        <?define PlatForm = "Win32" ?>
19                        <?define Mode = "Nightly" ?>
20                <?elseif "$(var.SysTray.ConfigurationName)" = "Nightly|x64"?>
21                        <?define PlatForm = "x64" ?>
22                        <?define Mode = "Nightly" ?>
23                <?else?>
24                        <?define PlatForm = "Unknown: plattform" ?>
25                <?endif?>
26        <?endif?>
27
28        <?if "$(var.PlatForm)" = "x64"?>
29                <?define PlatForm.x64 ?>
30                <?define Postfix.GUID = "DD5862EE637C" ?>
31        <?else?>
32                <?define Postfix.GUID = "DD5862EE637B" ?>
33                <?define PlatForm.Win32 ?>
34        <?endif?>
35       
36        <?ifdef var.PlatForm.Win32?>
37                <?define ProgramFiles = "ProgramFilesFolder" ?>
38                <?define Win64 = "no" ?>
39                <?define Plattform = "Intel" ?>
40        <?else?>
41                <?define ProgramFiles = "ProgramFiles64Folder" ?>
42                <?define Win64 = "yes" ?>
43                <?define Plattform = "x64" ?>
44        <?endif?>
45        <?ifndef var.Source ?>
46                <?define Source = "../../$(var.PlatForm)/$(var.Mode)/" ?>
47        <?endif?>
48        <?ifndef var.Helpers ?>
49                <?define Helpers = "../../$(var.PlatForm)/$(var.Mode)-helpers/" ?>
50        <?endif?>
51
52        <?include ../../AutoBuild.wxs ?>
53        <?define Version.String = "$(var.Version.Major).$(var.Version.Minor).$(var.Version.Revision).$(var.Version.Build)" ?>
54        <?define UpgradeCode = "0B36E3B7-0042-452d-B376-57E0C07ADDAA" ?>
55        <?include config.wxs ?>
56
57        <Product Id="????????-????-????-????-????????????" Name="$(var.App.Title) ($(var.PlatForm))" Language="1033" Version="$(var.Version.String)" Manufacturer="MySolutions NORDIC"
58                                        UpgradeCode="$(var.UpgradeCode)">
59
60                <Package Id="????????-????-????-????-????????????" Description="A simple windows monitor agent for (amongst others) Nagios."
61                                                 Comments="This will appear in the file summary stream." InstallerVersion="200" Compressed="yes" Languages="1033" Platforms="$(var.Plattform)" />
62
63                <Upgrade Id="$(var.UpgradeCode)">
64                        <UpgradeVersion Property="OLDAPPFOUND" IncludeMinimum="yes" Minimum="0.3.0.0" IncludeMaximum="yes" Maximum="$(var.Version.String)"/>
65                        <UpgradeVersion Property="NEWAPPFOUND" IncludeMinimum="no" Minimum="$(var.Version.String)" OnlyDetect="yes"/>
66                </Upgrade>
67
68                <?ifdef var.PlatForm.Win32?>
69                        <Condition Message="x64 bit version not supported (by installer) on Win32 bit platform (get Win32 bit version instead)">NOT VersionNT64</Condition>
70                <?else?>
71                        <Condition Message="Win32 bit version not supported (by installer) on x64 bit platform (get x64 bit version instead)">VersionNT64</Condition>
72                <?endif?>
73                <Media Id="1" Cabinet="Product.cab" EmbedCab="yes" CompressionLevel="high">
74                </Media>
75                <Directory Id="TARGETDIR" Name="SourceDir">
76                        <Directory Id="$(var.ProgramFiles)">
77                                        <Directory Id="INSTALLLOCATION" Name="$(var.App.ShortPath)" LongName="$(var.App.Path)">
78                                                <Component Id="MainClient" Guid="F6636DB0-A0B9-4dd2-B74C-$(var.Postfix.GUID)" Win64="$(var.Win64)">
79                                                        <File Id="NSClientEXE" Name="nsclient.exe" LongName="nsclient++.exe" DiskId="1"
80                                                                                Source="$(var.Source)/nsclient++.exe" Vital="yes">
81                                                                <Shortcut Id="StartmenuNSClientTest" Directory="ProgramMenuDir" Name="NSCPTest"
82                                                                                                        LongName="$(var.App.Title) ($(var.PlatForm), test)" WorkingDirectory="INSTALLDIR" Icon="nsclient.exe"
83                                                                                                        IconIndex="0" Arguments="/test" Description="Run $(var.App.Title) in test mode"/>
84                                                                <Shortcut Id="StartmenuNSClientStart" Directory="ProgramMenuDir" Name="NSCPStrt"
85                                                                                                        LongName="Start $(var.App.Title) ($(var.PlatForm))" WorkingDirectory='INSTALLDIR' Icon="nsclient.exe"
86                                                                                                        IconIndex="0" Arguments="/start" Description="Start the $(var.App.Title) service"/>
87                                                                <Shortcut Id="StartmenuNSClientStop" Directory="ProgramMenuDir" Name="NSCPStop"
88                                                                                                        LongName="Stop $(var.App.Title) ($(var.PlatForm))" WorkingDirectory='INSTALLDIR' Icon="nsclient.exe"
89                                                                                                        IconIndex="0" Arguments="/stop" Description="Stop the $(var.App.Title) service"/>
90                                                                <Shortcut Id="StarmentNSCHelp" Target="[HELP_LINK]" Icon="doc.ico" Directory="ProgramMenuDir" Name="Help" LongName="Documentation" Description="Visit the NSClient++ WIKI for documentation">
91                                                                        <Icon Id="doc.ico" SourceFile="help.ico"/>
92                                                                </Shortcut>
93                                                        </File>
94                                                        <File Id="NSClientTRAY" Name="nstray.exe" DiskId="1"
95                                                                                Source="$(var.Source)/nstray.exe" Vital="yes">
96                                                                <Shortcut Id="StartmenuNSClientTray" Directory="ProgramMenuDir" Name="NSCPTray"
97                                                                                                        LongName="$(var.App.Title) ($(var.PlatForm)) system tray)" WorkingDirectory="INSTALLDIR" Icon="nstray.exe"
98                                                                                                        IconIndex="0" Description="Start the $(var.App.Title) systemtray agent"/>
99                                                        </File>
100                                                       
101                                                        <File Id="NSClientINI" Name="NSC.ini" LongName="NSC.ini" DiskId="1" Source="$(var.Path.ini)/NSC.ini" Vital="yes"/>
102                                                        <?ifdef var.boost ?>
103                                                                <File Id="Changelog" Name="change.log" LongName="changelog.txt" DiskId="1" Source="$(var.Source)/changelog.txt" Vital="no"/>
104                                                        <?else?>
105                                                                <File Id="Changelog" Name="change.log" LongName="changelog.txt" DiskId="1" Source="$(var.Source)/changelog" Vital="no"/>
106                                                        <?endif?>
107                                                        <File Id="Counters" Name="counters.def" LongName="counters.defs" DiskId="1" Source="$(var.Source)/counters.defs" Vital="no"/>
108                                                        <File Id="License" Name="license.txt" LongName="license.txt" DiskId="1" Source="$(var.Source)/license.txt" Vital="no"/>
109                                                        <RemoveFile Id="LogFile1" Name="nsclient.log" On="uninstall" />
110                                                        <RemoveFile Id="LogFile2" Name="nsc.log" On="uninstall" />
111                                                        <RemoveFile Id="OldConfig" Name="nsc.old" On="uninstall" />
112                                                        <RemoveFile Id="NewConfig" Name="nsc.new" On="uninstall" />
113                                                </Component>
114                                                <Component Id="FireWallException" Guid="F6636DB0-A0B9-4dA2-B75D-$(var.Postfix.GUID)" Win64="$(var.Win64)" />
115                                                <Component Id="ServiceRegistration" Guid="F6636DB0-A0B9-4dA2-B74C-$(var.Postfix.GUID)" Win64="$(var.Win64)" />
116                                                <Component Id="Documentation" Guid="9B490E67-5472-4267-889C-$(var.Postfix.GUID)" Win64="$(var.Win64)">
117                                                        <File Id="doc.usage.nagios" Name="nagios.pdf" LongName="Nagios Usage Guide.pdf" DiskId="1" Source="$(var.Source)/Nagios Usage Guide.pdf" Vital="no" >
118                                                                <Shortcut Id="Startmenu.doc.nagios" Directory="ProgramMenuDir" Name="nagios"
119                                                                                                        LongName="Nagios Usage Guide" WorkingDirectory="INSTALLDIR" Description="Nagios Usage Guide"/>
120                                                        </File>
121                                                        <File Id="doc.reference" Name="nsclient.pdf" LongName="NSClient++ Reference Manual.pdf" DiskId="1" Source="$(var.Source)/NSClient++ Reference Manual.pdf" Vital="no" >
122                                                                <Shortcut Id="Startmenu.doc.ref" Directory="ProgramMenuDir" Name="refman"
123                                                                                                        LongName="NSClient++ Reference Manual" WorkingDirectory="INSTALLDIR" Description="NSClient++ Reference Manual"/>
124                                                        </File>
125                                                </Component>
126                                                <Directory Id="INSTALLLOCATION_MODS" Name="modules">
127                                                        <Component Id="NRPEListener" Guid="5A0246F8-5167-45db-B246-$(var.Postfix.GUID)" Win64="$(var.Win64)">
128                                                                <File Id="NRPEListenerDLL" Name="NRPELsnr.dll" LongName="NRPEListener.dll" DiskId="1" Source="$(var.Source)/modules/NRPEListener.dll" Vital="no" />
129                                                                <File Id="NRPEClientDLL" Name="NRPEClnt.dll" LongName="NRPEClient.dll" DiskId="1" Source="$(var.Source)/modules/NRPEClient.dll" Vital="no" />
130                                                        </Component>
131                                                        <Component Id="NSCListener" Guid="6DAF8BB9-9A56-48f5-B2C5-$(var.Postfix.GUID)" Win64="$(var.Win64)">
132                                                                <File Id="NSCListenerDLL" Name="NSCLsnr.dll" LongName="NSClientListener.dll" DiskId="1" Source="$(var.Source)/modules/NSClientListener.dll" Vital="no" />
133                                                        </Component>
134                                                        <Component Id="NSCA" Guid="8820A304-C596-4393-A72F-$(var.Postfix.GUID)" Win64="$(var.Win64)">
135                                                                <File Id="NSCAAgentDLL" Name="NSCAAgnt.dll" LongName="NSCAAgent.dll" DiskId="1" Source="$(var.Source)/modules/NSCAAgent.dll" Vital="no" />
136                                                        </Component>
137                                                        <Component Id="Plugins" Guid="9B490E67-5472-4266-96DC-$(var.Postfix.GUID)" Win64="$(var.Win64)">
138                                                                <File Id="A_DebugLogMetrics.dll" Name="ADebug.dll" LongName="A_DebugLogMetrics.dll" DiskId="1" Source="$(var.Source)/modules/A_DebugLogMetrics.dll" Vital="no" />
139                                                                <File Id="ModCheckEventLog.dll" Name="EvntLg.dll" LongName="CheckEventLog.dll" DiskId="1" Source="$(var.Source)/modules/CheckEventLog.dll" Vital="no" />
140                                                                <File Id="ModCheckExternalScripts.dll" Name="ExtScr.dll" LongName="CheckExternalScripts.dll" DiskId="1" Source="$(var.Source)/modules/CheckExternalScripts.dll" Vital="no" />
141                                                                <File Id="ModCheckHelpers.dll" Name="Helpers.dll" LongName="CheckHelpers.dll" DiskId="1" Source="$(var.Source)/modules/CheckHelpers.dll" Vital="no" />
142                                                                <File Id="ModCheckSystem.dll" Name="System.dll" LongName="CheckSystem.dll" DiskId="1" Source="$(var.Source)/modules/CheckSystem.dll" Vital="no" />
143                                                                <File Id="ModCheckWMI.dll" Name="WMI.dll" LongName="CheckWMI.dll" DiskId="1" Source="$(var.Source)/modules/CheckWMI.dll" Vital="no" />
144                                                                <File Id="ModFileLogger.dll" Name="Logger.dll" LongName="FileLogger.dll" DiskId="1" Source="$(var.Source)/modules/FileLogger.dll" Vital="no" />
145                                                                <File Id="ModLUAScript.dll" Name="LUAScr.dll" LongName="LUAScript.dll" DiskId="1" Source="$(var.Source)/modules/LUAScript.dll" Vital="no" />
146                                                                <File Id="ModRemoteConfiguration.dll" Name="RmtCfg.dll" LongName="RemoteConfiguration.dll" DiskId="1" Source="$(var.Source)/modules/RemoteConfiguration.dll" Vital="no" />
147                                                                <File Id="ModSysTray.dll" Name="SysTray.dll" LongName="SysTray.dll" DiskId="1" Source="$(var.Source)/modules/SysTray.dll" Vital="no" />
148                                                                <File Id="ModCheckDisk.dll" Name="CheckDsk.dll" LongName="CheckDisk.dll" DiskId="1" Source="$(var.Source)/modules/CheckDisk.dll" Vital="no" />
149                                                                <File Id="ModCheckTaskSched.dll" Name="TaskSch.dll" LongName="CheckTaskSched.dll" DiskId="1" Source="$(var.Source)/modules/CheckTaskSched.dll" Vital="no" />
150                                                        </Component>
151                                                </Directory>
152                                                <Directory Id="INSTALLLOCATION_SCRIPTS" Name="scripts">
153                                                        <Component Id="Scripts" Guid="9B490E67-5472-4267-96DC-$(var.Postfix.GUID)" Win64="$(var.Win64)">
154                                                                <File Id="scriptargs.bat" Name="args.bat" LongName="args.bat" DiskId="1" Source="$(var.Source)/scripts/args.bat" Vital="no" />
155                                                                <File Id="scriptcheck_vb.vbs" Name="check_vb.vbs" LongName="check_vb.vbs" DiskId="1" Source="$(var.Source)/scripts/check_vb.vbs" Vital="no" />
156                                                                <File Id="scriptcritical.bat" Name="critical.bat" LongName="critical.bat" DiskId="1" Source="$(var.Source)/scripts/critical.bat" Vital="no" />
157                                                                <File Id="scriptmulti_line.bat" Name="mline.bat" LongName="multi_line.bat" DiskId="1" Source="$(var.Source)/scripts/multi_line.bat" Vital="no" />
158                                                                <File Id="scriptok.bat" Name="ok.bat" LongName="ok.bat" DiskId="1" Source="$(var.Source)/scripts/ok.bat" Vital="no" />
159                                                                <File Id="scriptpowershell.ps1" Name="pwrshell.ps1" LongName="powershell.ps1" DiskId="1" Source="$(var.Source)/scripts/powershell.ps1" Vital="no" />
160                                                                <File Id="scripttest.lua" Name="test.lua" LongName="test.lua" DiskId="1" Source="$(var.Source)/scripts/test.lua" Vital="no" />
161                                                        </Component>
162                                                </Directory>
163                                        </Directory>
164                                </Directory>
165
166                        <!-- ### Start Menu Items ### -->
167                                <Directory Id="ProgramMenuFolder" Name="PMenu" LongName="Programs">
168                                        <Directory Id="ProgramMenuDir" Name='NSClient' LongName="$(var.App.StartMenuPath)" />
169                                </Directory>
170                        </Directory>
171
172                <!-- ### FEATURES START ### -->
173                        <Feature Id="ProductFeature" Title="NSClient++ $(var.PlatForm)" Description="Binaries for $(var.PlatForm)"
174                                                         Display="expand"  Level="1" ConfigurableDirectory="INSTALLLOCATION" Absent="disallow">
175                                <Feature Id="MainProgram" Title="Program" Description="Main Service" Level="1" Absent="disallow">
176                                        <ComponentRef Id="MainClient" />
177                                </Feature>
178                                <Feature Id="FireWallException" Title="Firewall Exception" Description="Add an exception to the windows firewall" Level="1">
179                                        <ComponentRef Id="FireWallException" />
180                                </Feature>
181                                <Feature Id="ServiceRegistration" Title="Register service" Description="Register the NSClient++ service" Level="1">
182                                        <ComponentRef Id="ServiceRegistration" />
183                                </Feature>
184                                <Feature Id="Documentation" Title="Documentation (pdf)" Description="Documentation for NSClient++ and how to use it from Nagios" Level="1">
185                                        <ComponentRef Id="Documentation" />
186                                </Feature>
187                                <Feature Id="Plugins" Title="Plugins" Description="Plugins" Level="1" Absent="disallow">
188                                <Feature Id="CheckPlugins" Title="Check Plugins" Description="Various plugins to check your system. (Includes all check plugins)" Level="1">
189                                        <ComponentRef Id="Plugins" />
190                                </Feature>
191                                <Feature Id="NRPEPlugins" Title="NRPE Support" Description="NRPE Listener Plugin. Support for the more vercitile NRPE protocol (check_nrpe)" Level="1" Absent="disallow">
192                                        <ComponentRef Id="NRPEListener" />
193                                </Feature>
194                                <Feature Id="NSCPlugins" Title="NSClient support" Description="NSClient Listener Plugin. Support for the old NSClient protocol (check_nt)" Level="1" Absent="disallow">
195                                        <ComponentRef Id="NSCListener" />
196                                </Feature>
197                                <Feature Id="NSCAPlugin" Title="NSCA plugin" Description="Plugin to submit passive results to an NSCA server" Level="1" Absent="disallow">
198                                        <ComponentRef Id="NSCA" />
199                                </Feature>
200                                <Feature Id="SampleScripts" Title="Sample Scripts" Description="Some sample client-side scripts to use with NRPE" Level="1" Absent="disallow">
201                                        <ComponentRef Id="Scripts" />
202                                </Feature>
203                        </Feature>
204                </Feature>
205
206                <CustomTable Id="WixFirewallException">
207                        <Column Id="Id"                                 Category="Identifier"   PrimaryKey="yes"        Type="string"   Width="72"      Modularize="Column"                                                                                     Description="The primary key, a non-localized token."/>
208                        <Column Id="Name"                               Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255" Modularize="Property"       Nullable="yes" Localizable="yes" Description="Localizable display name."/>
209                        <Column Id="RemoteAddresses"    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="2"       Modularize="Property"   Nullable="yes"                                                                  Description="Remote address to accept incoming connections from."/>
210                        <Column Id="Port"                               Category="Formatted"    PrimaryKey="no"         Type="int"              Width="2"       Modularize="Property"   Nullable="yes" MinValue="1"                     Description="Port number."/>
211                        <Column Id="Protocol"                   Category="Integer"              PrimaryKey="no"         Type="int"              Width="2"       MinValue="6" Nullable="yes" MaxValue="17"                                                       Description="Protocol (6=TCP; 17=UDP)."/>
212                        <Column Id="Program"                    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"          Description="Exception for a program (formatted path name)."/>
213                        <Column Id="Attributes"                 Category="Integer"              PrimaryKey="no"         Type="int"              Width="4"       Nullable="yes" MinValue="0" MaxValue="65536" Description="Vital=1"/>
214                        <Column Id="Component_"                 Category="Identifier"   PrimaryKey="no"         Type="string"   Width="72"      Modularize="Column"                                                                                     Description="Foreign key into the Component table referencing component that controls the firewall configuration."/>
215                        <Row>
216                                <Data Column="Id">FWX1</Data>
217                                <Data Column="Name">NSClient++ Monitoring Agent</Data>
218                                <Data Column="Component_">FireWallException</Data>
219                                <Data Column="Program">[#NSClientEXE]</Data>
220                        </Row>
221                </CustomTable>
222
223                <CustomTable Id="Services">
224                        <Column Id="Id"                 Category="Identifier"   PrimaryKey="yes"        Type="string"   Width="72"      Modularize="Column"
225                                        Description="The primary key, a non-localized token."/>
226                        <Column Id="ShortName"  Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255" Modularize="Property"       Nullable="yes" Localizable="yes"
227                                        Description="Service name."/>
228                        <Column Id="LongName"   Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
229                                        Description="Service long name."/>
230                        <Column Id="Description" Category="Formatted"   PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
231                                        Description="The description"/>
232                        <Column Id="Program"    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
233                                        Description="Exception for a program (formatted path name)."/>
234                        <Column Id="Attributes" Category="Integer"              PrimaryKey="no"         Type="int"              Width="4"                                                       Nullable="yes" MinValue="0" MaxValue="65536"
235                                        Description="Vital=1"/>
236                        <Column Id="Component_" Category="Identifier"   PrimaryKey="no"         Type="string"   Width="72"      Modularize="Column"     
237                                        Description="Foreign key into the Component table referencing component that controls the firewall configuration."/>
238                        <Row>
239                                <Data Column="Id">SVC</Data>
240                                <Data Column="ShortName">NSClientpp</Data>
241                                <Data Column="LongName">$(var.App.Title) ($(var.PlatForm))</Data>
242                                <Data Column="Description">Monitoring agent for nagios (and others) used to respond to status queries.</Data>
243                                <Data Column="Component_">ServiceRegistration</Data>
244                                <Data Column="Program">[#NSClientEXE]</Data>
245                        </Row>
246                </CustomTable>
247
248                <?include properties.wxs ?>
249
250                <CustomAction Id='ReadOldConfig' BinaryKey='InstallerHelper' DllEntry='ImportConfig' Impersonate='no' />
251                <CustomAction Id='ScheduleWriteConfig' BinaryKey='InstallerHelper' DllEntry='ScheduleWriteConfig' Impersonate='no' />
252                <CustomAction Id="ExecWriteConfig" BinaryKey="InstallerHelper" DllEntry="ExecWriteConfig" Execute="deferred" Impersonate="no" Return="check"  />
253
254    <CustomAction Id='NeedUninstall' BinaryKey='InstallerHelper' DllEntry='NeedUninstall' Impersonate='no' />
255               
256
257                <CustomAction Id="PreventDowngrading" Error="Newer version already installed." />
258
259                <CustomAction Id='SchedServiceInstall' BinaryKey='InstallerHelper' DllEntry='ScheduleInstallService' Execute="immediate" Return="check" />
260                <CustomAction Id='SchedServiceUnInstall' BinaryKey='InstallerHelper' DllEntry='ScheduleUnInstallService' Execute="immediate" Return="check" />
261                <CustomAction Id="WixRollbackServiceInstall" BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall" Execute="rollback" Impersonate="no" Return="check"  />
262                <CustomAction Id="WixExecServiceInstall" BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall" Execute="deferred" Impersonate="no" Return="check"  />
263                <CustomAction Id="WixRollbackServiceUninstall" BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall" Execute="rollback" Impersonate="no" Return="check"  />
264                <CustomAction Id="WixExecServiceUninstall" BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall" Execute="deferred" Impersonate="no" Return="check" />
265
266                <CustomAction Id='StartAllServices' BinaryKey='InstallerHelper' DllEntry='StartAllServices' Impersonate='no' Return='asyncNoWait' Execute="immediate"/>
267                <CustomAction Id='StopAllServices' BinaryKey='InstallerHelper' DllEntry='StopAllServices' Impersonate='no' Return='asyncNoWait' Execute="immediate"/>
268
269                <CustomAction Id="WixSchedFirewallExceptionsInstall" BinaryKey="WixFirewallCA" DllEntry="SchedFirewallExceptionsInstall" Execute="immediate" Return="check" />
270                <CustomAction Id="WixSchedFirewallExceptionsUninstall" BinaryKey="WixFirewallCA" DllEntry="SchedFirewallExceptionsUninstall" Execute="immediate" Return="check"  />
271                <CustomAction Id="WixRollbackFirewallExceptionsInstall" BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check"  />
272                <CustomAction Id="WixExecFirewallExceptionsInstall" BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check"  />
273                <CustomAction Id="WixRollbackFirewallExceptionsUninstall" BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check"  />
274                <CustomAction Id="WixExecFirewallExceptionsUninstall" BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check" />
275
276
277                <Binary Id='InstallerHelper' SourceFile='$(var.Helpers)/installer_dll.dll' />
278                <Binary Id='WixFirewallCA' SourceFile='$(var.Helpers)/installer_dll_fw.dll' />
279
280                <InstallExecuteSequence>
281                        <RemoveExistingProducts After='InstallInitialize'/>
282                        <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWAPPFOUND</Custom>
283                        <Custom Action="ScheduleWriteConfig" After='InstallFiles' />
284                        <Custom Action="SchedServiceInstall" After="InstallFiles" />
285                        <Custom Action="SchedServiceUnInstall" Before="RemoveFiles" />
286                        <Custom Action="StopAllServices" Before="InstallValidate" />
287
288                        <Custom Action="WixSchedFirewallExceptionsUninstall" Before="RemoveFiles">
289                                <![CDATA[ VersionNT >= 501 AND (ServicePackLevel >= 2 OR VersionNT >= 600) ]]>
290                        </Custom>
291                        <Custom Action="WixSchedFirewallExceptionsInstall" After="InstallFiles">
292                                <![CDATA[ VersionNT >= 501 AND (ServicePackLevel >= 2 OR VersionNT >= 600) ]]>
293                        </Custom>
294                </InstallExecuteSequence>
295
296                <InstallUISequence>
297                        <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWAPPFOUND</Custom>
298                        <Custom Action="NeedUninstall" After="FindRelatedProducts" />
299                </InstallUISequence>
300
301                <Property Id="ALLUSERS"><![CDATA[2]]></Property>
302
303                <!-- ### User Interfaces ### -->
304                <UIRef Id="WixUI_Mondo" />
305                <UIRef Id="WixUI_ErrorProgressText" />
306
307                <!-- ### Icons -->
308                <Icon Id="nsclient.exe" SourceFile="$(var.Source)/NSClient++.exe" />
309                <Icon Id="nstray.exe" SourceFile="$(var.Source)/nstray.exe" />
310        </Product>
311</Wix>
Note: See TracBrowser for help on using the repository browser.