source: nscp/helpers/installers/installer/Product.wxs @ c391984

0.4.00.4.10.4.2
Last change on this file since c391984 was c391984, checked in by Michael Medin <michael@…>, 2 years ago

0.4.x:

  • tweaks to the build environment to make the installer work
  • fixed Unicode issue
  • fixed performance data
  • improved so alias doesn't re-process the data so much
  • Property mode set to 100644
File size: 24.2 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
3        <?define PlatForm = "$(var.arch)" ?>
4        <?define Mode = "Nightly" ?>
5        <?define SysTray.ConfigurationName = "BOOST BUILD" ?>
6
7        <?if "$(var.PlatForm)" = "x64"?>
8                <?define PlatForm.x64 ?>
9                <?define Postfix.GUID = "DD5862EE637C" ?>
10        <?else?>
11                <?define Postfix.GUID = "DD5862EE637B" ?>
12                <?define PlatForm.Win32 ?>
13        <?endif?>
14       
15        <?ifdef var.PlatForm.Win32?>
16                <?define ProgramFiles = "ProgramFilesFolder" ?>
17                <?define Win64 = "no" ?>
18                <?define Plattform = "Intel" ?>
19        <?else?>
20                <?define ProgramFiles = "ProgramFiles64Folder" ?>
21                <?define Win64 = "yes" ?>
22                <?define Plattform = "x64" ?>
23        <?endif?>
24        <?ifndef var.Source ?>
25                <?define Source = "../../$(var.PlatForm)/$(var.Mode)/" ?>
26        <?endif?>
27
28        <?define Version.String = "$(var.Version.Major).$(var.Version.Minor).$(var.Version.Revision).$(var.Version.Build)" ?>
29        <?define UpgradeCode = "0B36E3B7-0042-452d-B376-57E0C07ADDAA" ?>
30        <?include config.wxs ?>
31
32        <Product Id="????????-????-????-????-????????????" Name="$(var.App.Title) ($(var.PlatForm))" Language="1033" Version="$(var.Version.String)" Manufacturer="MySolutions NORDIC"
33                                        UpgradeCode="$(var.UpgradeCode)">
34
35                <Package Id="????????-????-????-????-????????????" Description="A simple windows monitor agent for (amongst others) Nagios."
36                                                 Comments="This will appear in the file summary stream." InstallerVersion="200" Compressed="yes" Languages="1033" Platforms="$(var.Plattform)" />
37
38                <Upgrade Id="$(var.UpgradeCode)">
39                        <UpgradeVersion Property="OLDAPPFOUND" IncludeMinimum="yes" Minimum="0.3.0.0" IncludeMaximum="yes" Maximum="$(var.Version.String)"/>
40                        <UpgradeVersion Property="NEWAPPFOUND" IncludeMinimum="no" Minimum="$(var.Version.String)" OnlyDetect="yes"/>
41                </Upgrade>
42
43                <?ifdef var.PlatForm.Win32?>
44                        <Condition Message="x64 bit version not supported (by installer) on Win32 bit platform (get Win32 bit version instead)">NOT VersionNT64</Condition>
45                <?else?>
46                        <Condition Message="Win32 bit version not supported (by installer) on x64 bit platform (get x64 bit version instead)">VersionNT64</Condition>
47                <?endif?>
48                <Media Id="1" Cabinet="Product.cab" EmbedCab="yes" CompressionLevel="high">
49                </Media>
50                <Directory Id="TARGETDIR" Name="SourceDir">
51                        <Directory Id="$(var.ProgramFiles)">
52                                        <Directory Id="INSTALLLOCATION" Name="$(var.App.ShortPath)" LongName="$(var.App.Path)">
53                                                <Component Id="MainClient" Guid="F6636DB0-A0B9-4dd2-B74C-$(var.Postfix.GUID)" Win64="$(var.Win64)">
54                                                        <File Id="NSClientEXE" Name="nscp.exe" LongName="nscp.exe" DiskId="1"
55                                                                                Source="$(var.Source)/nscp.exe" Vital="yes">
56                                                                <Shortcut Id="StartmenuNSClientTest" Directory="ProgramMenuDir" Name="NSCPTest"
57                                                                                                        LongName="$(var.App.Title) ($(var.PlatForm), test)" WorkingDirectory="INSTALLDIR" Icon="nscp.exe"
58                                                                                                        IconIndex="0" Arguments="/test" Description="Run $(var.App.Title) in test mode"/>
59                                                                <Shortcut Id="StartmenuNSClientStart" Directory="ProgramMenuDir" Name="NSCPStrt"
60                                                                                                        LongName="Start $(var.App.Title) ($(var.PlatForm))" WorkingDirectory='INSTALLDIR' Icon="nscp.exe"
61                                                                                                        IconIndex="0" Arguments="/start" Description="Start the $(var.App.Title) service"/>
62                                                                <Shortcut Id="StartmenuNSClientStop" Directory="ProgramMenuDir" Name="NSCPStop"
63                                                                                                        LongName="Stop $(var.App.Title) ($(var.PlatForm))" WorkingDirectory='INSTALLDIR' Icon="nscp.exe"
64                                                                                                        IconIndex="0" Arguments="/stop" Description="Stop the $(var.App.Title) service"/>
65                                                                <Shortcut Id="StarmentNSCHelp" Target="[HELP_LINK]" Icon="doc.ico" Directory="ProgramMenuDir" Name="Help" LongName="Documentation" Description="Visit the NSClient++ WIKI for documentation">
66                                                                        <Icon Id="doc.ico" SourceFile="help.ico"/>
67                                                                </Shortcut>
68                                                        </File>
69                                                        <!--
70                                                        <File Id="NSClientTRAY" Name="nstray.exe" DiskId="1"
71                                                                                Source="$(var.Source)/nstray.exe" Vital="yes">
72                                                                <Shortcut Id="StartmenuNSClientTray" Directory="ProgramMenuDir" Name="NSCPTray"
73                                                                                                        LongName="$(var.App.Title) ($(var.PlatForm)) system tray)" WorkingDirectory="INSTALLDIR" Icon="nstray.exe"
74                                                                                                        IconIndex="0" Description="Start the $(var.App.Title) systemtray agent"/>
75                                                        </File>
76                                                        -->
77                                                        <File Id="NSClientErrorReporter" Name="reporter.exe" DiskId="1" Source="$(var.Source)/reporter.exe" Vital="yes" />
78
79                                                        <!--
80                                                        <File Id="NSClientINI" Name="NSC.ini" LongName="NSC.ini" DiskId="1" Source="$(var.Path.ini)/NSC.ini" Vital="yes"/>
81                                                        -->
82                                                        <File Id="Changelog" Name="change.log" LongName="changelog.txt" DiskId="1" Source="$(var.Source)/changelog" Vital="no"/>
83                                                        <File Id="Counters" Name="counters.def" LongName="counters.defs" DiskId="1" Source="$(var.Source)/counters.defs" Vital="no"/>
84                                                        <File Id="License" Name="license.txt" LongName="license.txt" DiskId="1" Source="$(var.Source)/license.txt" Vital="no"/>
85                                                       
86                                                        <RemoveFile Id="LogFile1" Name="nsclient.log" On="uninstall" />
87                                                        <RemoveFile Id="LogFile2" Name="nsc.log" On="uninstall" />
88                                                        <RemoveFile Id="OldConfig" Name="nsc.old" On="uninstall" />
89                                                        <RemoveFile Id="NewConfig" Name="nsc.new" On="uninstall" />
90                                                </Component>
91                                                <Component Id="FireWallException" Guid="F6636DB0-A0B9-4dA2-B75D-$(var.Postfix.GUID)" Win64="$(var.Win64)" />
92                                                <Component Id="ServiceRegistration" Guid="F6636DB0-A0B9-4dA2-B74C-$(var.Postfix.GUID)" Win64="$(var.Win64)" />
93                                                <Component Id="Documentation" Guid="9B490E67-5472-4267-889C-$(var.Postfix.GUID)" Win64="$(var.Win64)">
94                                                        <File Id="doc.usage.nagios" Name="nagios.pdf" LongName="Nagios Usage Guide.pdf" DiskId="1" Source="$(var.Source)/docs/Nagios Usage Guide.pdf" Vital="no" >
95                                                                <Shortcut Id="Startmenu.doc.nagios" Directory="ProgramMenuDir" Name="nagios"
96                                                                                                        LongName="Nagios Usage Guide" WorkingDirectory="INSTALLDIR" Description="Nagios Usage Guide"/>
97                                                        </File>
98                                                        <File Id="doc.reference" Name="nsclient.pdf" LongName="NSClient++ Reference Manual.pdf" DiskId="1" Source="$(var.Source)/docs/NSClient++ Reference Manual.pdf" Vital="no" >
99                                                                <Shortcut Id="Startmenu.doc.ref" Directory="ProgramMenuDir" Name="refman"
100                                                                                                        LongName="NSClient++ Reference Manual" WorkingDirectory="INSTALLDIR" Description="NSClient++ Reference Manual"/>
101                                                        </File>
102                                                </Component>
103                                                <Directory Id="INSTALLLOCATION_SECURITY" Name="security">
104                                                        <Component Id="NRPEServerCert" Guid="5A0246F8-5167-45db-2E46-$(var.Postfix.GUID)" Win64="$(var.Win64)">
105                                                                <File Id="NRPECert" Name="nrpe_dh.pem" LongName="nrpe_dh_512.pem" DiskId="1" Source="$(var.Source)/security/nrpe_dh_512.pem" Vital="no"/>
106                                                        </Component>
107                                                </Directory>
108                                                <Directory Id="INSTALLLOCATION_MODS" Name="modules">
109                                                        <Component Id="NRPEServer" Guid="5A0246F8-5167-45db-B246-$(var.Postfix.GUID)" Win64="$(var.Win64)">
110                                                                <File Id="NRPEListenerDLL" Name="NRPELsnr.dll" LongName="NRPEListener.dll" DiskId="1" Source="$(var.Source)/modules/NRPEServer.dll" Vital="no" />
111                                                                <File Id="NRPEClientDLL" Name="NRPEClnt.dll" LongName="NRPEClient.dll" DiskId="1" Source="$(var.Source)/modules/NRPEClient.dll" Vital="no" />
112                                                        </Component>
113                                                        <Component Id="NSCListener" Guid="6DAF8BB9-9A56-48f5-B2C5-$(var.Postfix.GUID)" Win64="$(var.Win64)">
114                                                                <File Id="NSCListenerDLL" Name="NSCLsnr.dll" LongName="NSClientListener.dll" DiskId="1" Source="$(var.Source)/modules/NSClientServer.dll" Vital="no" />
115                                                        </Component>
116                                                        <Component Id="NSCA" Guid="8820A304-C596-4393-A72F-$(var.Postfix.GUID)" Win64="$(var.Win64)">
117                                                                <File Id="NSCAAgentDLL" Name="NSCAAgnt.dll" LongName="NSCAAgent.dll" DiskId="1" Source="$(var.Source)/modules/NSCAAgent.dll" Vital="no" />
118                                                                <File Id="SchedulerDLL" Name="Sched.dll" LongName="Scheduler.dll" DiskId="1" Source="$(var.Source)/modules/Scheduler.dll" Vital="no" />
119                                                        </Component>
120                                                        <Component Id="Plugins" Guid="9B490E67-5472-4266-96DC-$(var.Postfix.GUID)" Win64="$(var.Win64)">
121                                                                                                         <!--
122                                                                <File Id="A_DebugLogMetrics.dll" Name="ADebug.dll" LongName="A_DebugLogMetrics.dll" DiskId="1" Source="$(var.Source)/modules/A_DebugLogMetrics.dll" Vital="no" />
123                                                                                                                -->
124                                                                <File Id="ModCheckEventLog.dll" Name="EvntLg.dll" LongName="CheckEventLog.dll" DiskId="1" Source="$(var.Source)/modules/CheckEventLog.dll" Vital="no" />
125                                                                <File Id="ModCheckExternalScripts.dll" Name="ExtScr.dll" LongName="CheckExternalScripts.dll" DiskId="1" Source="$(var.Source)/modules/CheckExternalScripts.dll" Vital="no" />
126                                                                <File Id="ModCheckHelpers.dll" Name="Helpers.dll" LongName="CheckHelpers.dll" DiskId="1" Source="$(var.Source)/modules/CheckHelpers.dll" Vital="no" />
127                                                                <File Id="ModCheckSystem.dll" Name="System.dll" LongName="CheckSystem.dll" DiskId="1" Source="$(var.Source)/modules/CheckSystem.dll" Vital="no" />
128                                                                <File Id="ModCheckWMI.dll" Name="WMI.dll" LongName="CheckWMI.dll" DiskId="1" Source="$(var.Source)/modules/CheckWMI.dll" Vital="no" />
129                                                                <File Id="ModFileLogger.dll" Name="Logger.dll" LongName="FileLogger.dll" DiskId="1" Source="$(var.Source)/modules/FileLogger.dll" Vital="no" />
130                                                                <File Id="ModLUAScript.dll" Name="LUAScr.dll" LongName="LUAScript.dll" DiskId="1" Source="$(var.Source)/modules/LUAScript.dll" Vital="no" />
131                                                                <File Id="ModCheckNSCP.dll" Name="CNSCP.dll" LongName="CheckNSCP.dll" DiskId="1" Source="$(var.Source)/modules/CheckNSCP.dll" Vital="no" />
132                                                                <!--
133                                                                <File Id="ModRemoteConfiguration.dll" Name="RmtCfg.dll" LongName="RemoteConfiguration.dll" DiskId="1" Source="$(var.Source)/modules/RemoteConfiguration.dll" Vital="no" />
134                                                                <File Id="ModSysTray.dll" Name="SysTray.dll" LongName="SysTray.dll" DiskId="1" Source="$(var.Source)/modules/SysTray.dll" Vital="no" />
135                                                                                                                -->
136                                                                <File Id="ModCheckDisk.dll" Name="CheckDsk.dll" LongName="CheckDisk.dll" DiskId="1" Source="$(var.Source)/modules/CheckDisk.dll" Vital="no" />
137                                                                <File Id="ModCheckTaskSched.dll" Name="TaskSch.dll" LongName="CheckTaskSched.dll" DiskId="1" Source="$(var.Source)/modules/CheckTaskSched.dll" Vital="no" />
138                                                                <File Id="ModCheckTaskSched2.dll" Name="TaskSch2.dll" LongName="CheckTaskSched2.dll" DiskId="1" Source="$(var.Source)/modules/CheckTaskSched2.dll" Vital="no" />
139                                                        </Component>
140                                                </Directory>
141            <Directory Id="INSTALLLOCATION_SCRIPTS" Name="scripts">
142              <Component Id="Scripts" Guid="9B490E67-5472-4268-96DF-$(var.Postfix.GUID)" Win64="$(var.Win64)">
143                <File Id="script001" Name="c_60s.bat" LongName="check_60s.bat" DiskId="1" Source="$(var.Source)/scripts/check_60s.bat" Vital="no" />
144                <File Id="script002" Name="c_btry.vbs" LongName="check_battery.vbs" DiskId="1" Source="$(var.Source)/scripts/check_battery.vbs" Vital="no" />
145                <File Id="script003" Name="c_nrdb.bat" LongName="check_no_rdp.bat" DiskId="1" Source="$(var.Source)/scripts/check_no_rdp.bat" Vital="no" />
146                <File Id="script004" Name="c_prt.vbs" LongName="check_printer.vbs" DiskId="1" Source="$(var.Source)/scripts/check_printer.vbs" Vital="no" />
147                <File Id="script005" Name="c_ok.bat" LongName="check_ok.bat" DiskId="1" Source="$(var.Source)/scripts/check_ok.bat" Vital="no" />
148                <File Id="script006" Name="c_files.vbs" LongName="check_files.vbs" DiskId="1" Source="$(var.Source)/scripts/check_files.vbs" Vital="no" />
149                <File Id="script007" Name="c_ping.bat" LongName="check_ping.bat" DiskId="1" Source="$(var.Source)/scripts/check_ping.bat" Vital="no" />
150                <File Id="sample002" Name="c_test.ps1" LongName="check_test.ps1" DiskId="1" Source="$(var.Source)/scripts/check_test.ps1" Vital="no" />
151                <File Id="sample003" Name="c_test.vbs" LongName="check_test.vbs" DiskId="1" Source="$(var.Source)/scripts/check_test.vbs" Vital="no" />
152                                  <!--
153                <File Id="lua001" Name="test.lua" LongName="test.lua" DiskId="1" Source="$(var.Source)/scripts/test.lua" Vital="no" />
154                                -->
155              </Component>
156              <Directory Id="INSTALLLOCATION_SCRIPTS_LIB" Name="lib">
157                <Component Id="ScriptLibs" Guid="9B490E67-5472-4267-96DF-$(var.Postfix.GUID)" Win64="$(var.Win64)">
158                  <File Id="lib001" Name="nagplug.vbs" LongName="NagiosPlugins.vbs" DiskId="1" Source="$(var.Source)/scripts/lib/NagiosPlugins.vbs" Vital="no" />
159                  <File Id="lib002" Name="wrapper.vbs" LongName="wrapper.vbs" DiskId="1" Source="$(var.Source)/scripts/lib/wrapper.vbs" Vital="no" />
160                </Component>
161              </Directory>
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="NRPEServer" />
193                                        <ComponentRef Id="NRPEServerCert" />
194                                </Feature>
195                                <Feature Id="NSCPlugins" Title="NSClient support" Description="NSClient Listener Plugin. Support for the old NSClient protocol (check_nt)" Level="1" Absent="disallow">
196                                        <ComponentRef Id="NSCListener" />
197                                </Feature>
198                                <Feature Id="NSCAPlugin" Title="NSCA plugin" Description="Plugin to submit passive results to an NSCA server" Level="1" Absent="disallow">
199                                        <ComponentRef Id="NSCA" />
200                                </Feature>
201                                <Feature Id="SampleScripts" Title="Sample Scripts" Description="Some sample client-side scripts to use with NRPE" Level="1" Absent="disallow">
202          <ComponentRef Id="Scripts" />
203          <ComponentRef Id="ScriptLibs" />
204        </Feature>
205                        </Feature>
206                </Feature>
207
208                <CustomTable Id="WixFirewallException">
209                        <Column Id="Id"                                 Category="Identifier"   PrimaryKey="yes"        Type="string"   Width="72"      Modularize="Column"                                                                                     Description="The primary key, a non-localized token."/>
210                        <Column Id="Name"                               Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255" Modularize="Property"       Nullable="yes" Localizable="yes" Description="Localizable display name."/>
211                        <Column Id="RemoteAddresses"    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="2"       Modularize="Property"   Nullable="yes"                                                                  Description="Remote address to accept incoming connections from."/>
212                        <Column Id="Port"                               Category="Formatted"    PrimaryKey="no"         Type="int"              Width="2"       Modularize="Property"   Nullable="yes" MinValue="1"                     Description="Port number."/>
213                        <Column Id="Protocol"                   Category="Integer"              PrimaryKey="no"         Type="int"              Width="2"       MinValue="6" Nullable="yes" MaxValue="17"                                                       Description="Protocol (6=TCP; 17=UDP)."/>
214                        <Column Id="Program"                    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"          Description="Exception for a program (formatted path name)."/>
215                        <Column Id="Attributes"                 Category="Integer"              PrimaryKey="no"         Type="int"              Width="4"       Nullable="yes" MinValue="0" MaxValue="65536" Description="Vital=1"/>
216                        <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."/>
217                        <Row>
218                                <Data Column="Id">FWX1</Data>
219                                <Data Column="Name">NSClient++ Monitoring Agent</Data>
220                                <Data Column="Component_">FireWallException</Data>
221                                <Data Column="Program">[#NSClientEXE]</Data>
222                        </Row>
223                </CustomTable>
224
225                <CustomTable Id="Services">
226                        <Column Id="Id"                 Category="Identifier"   PrimaryKey="yes"        Type="string"   Width="72"      Modularize="Column"
227                                        Description="The primary key, a non-localized token."/>
228                        <Column Id="ShortName"  Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255" Modularize="Property"       Nullable="yes" Localizable="yes"
229                                        Description="Service name."/>
230                        <Column Id="LongName"   Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
231                                        Description="Service long name."/>
232                        <Column Id="Description" Category="Formatted"   PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
233                                        Description="The description"/>
234                        <Column Id="Program"    Category="Formatted"    PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
235                                        Description="Exception for a program (formatted path name)."/>
236                        <Column Id="Dependencies" Category="Formatted"  PrimaryKey="no"         Type="string"   Width="255"     Modularize="Property"   Nullable="yes"
237                                        Description="Service Dependencies"/>
238                        <Column Id="Attributes" Category="Integer"              PrimaryKey="no"         Type="int"              Width="4"                                                       Nullable="yes" MinValue="0" MaxValue="65536"
239                                        Description="Vital=1"/>
240                        <Column Id="Component_" Category="Identifier"   PrimaryKey="no"         Type="string"   Width="72"      Modularize="Column"     
241                                        Description="Foreign key into the Component table referencing component that controls the firewall configuration."/>
242                        <Row>
243                                <Data Column="Id">SVC</Data>
244                                <Data Column="ShortName">nscp</Data>
245                                <Data Column="LongName">$(var.App.Title) ($(var.PlatForm))</Data>
246                                <Data Column="Description">Monitoring agent for nagios (and others) used to respond to status queries.</Data>
247                                <Data Column="Component_">ServiceRegistration</Data>
248                                <Data Column="Program">[#NSClientEXE] --service --run --name nscp</Data>
249                                <Data Column="Dependencies"></Data>
250                        </Row>
251                </CustomTable>
252
253                <?include properties.wxs ?>
254
255                <CustomAction Id='ImportConfig'             BinaryKey='InstallerHelper' DllEntry='ImportConfig'               Impersonate='no' Execute="immediate" Return="check" />
256                <CustomAction Id='ScheduleWriteConfig'      BinaryKey='InstallerHelper' DllEntry='ScheduleWriteConfig'        Impersonate='no' Execute="immediate" Return="check" />
257                <CustomAction Id="ExecWriteConfig"          BinaryKey="InstallerHelper" DllEntry="ExecWriteConfig"            Impersonate="no" Execute="deferred" Return="check"  />
258
259    <CustomAction Id='NeedUninstall'            BinaryKey='InstallerHelper' DllEntry='NeedUninstall'              Impersonate='no' Execute="immediate" Return="check" />
260               
261
262                <CustomAction Id="PreventDowngrading"       Error="Newer version already installed." />
263
264                <CustomAction Id='SchedServiceInstall'        BinaryKey='InstallerHelper' DllEntry='ScheduleInstallService'   Impersonate="no" Execute="immediate" Return="check" />
265    <CustomAction Id='SchedServiceUnInstall'      BinaryKey='InstallerHelper' DllEntry='ScheduleUnInstallService' Impersonate="no" Execute="immediate" Return="check" />
266                <CustomAction Id="WixRollbackServiceInstall"  BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall"       Impersonate="no" Execute="rollback"  Return="check"  />
267                <CustomAction Id="WixExecServiceInstall"      BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall"       Impersonate="no" Execute="deferred"  Return="check"  />
268                <CustomAction Id="WixRollbackServiceUninstall" BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall"      Impersonate="no" Execute="rollback"  Return="check"  />
269    <CustomAction Id="WixExecServiceUninstall"    BinaryKey="InstallerHelper" DllEntry="ExecServiceInstall"       Impersonate="no" Execute="deferred"  Return="check" />
270
271    <CustomAction Id='SchedStopAllServices'       BinaryKey='InstallerHelper' DllEntry='SchedStopAllServices'     Impersonate="no" Execute="immediate" Return="check" />
272    <CustomAction Id='ExitDialogExec'             BinaryKey='InstallerHelper' DllEntry='ExitDialogExec'           Impersonate="no" Execute="immediate" Return="check" />
273    <CustomAction Id='StartAllServices'           BinaryKey='InstallerHelper' DllEntry='StartAllServices'         Impersonate="no" Execute="deferred" Return="check" />
274    <CustomAction Id='StopAllServices'            BinaryKey='InstallerHelper' DllEntry='StopAllServices'          Impersonate="no" Execute="deferred" Return="check" />
275    <CustomAction Id='ExecCopyFileDefered'        BinaryKey='InstallerHelper' DllEntry='ExecCopyFileDefered'      Impersonate="no" Execute="deferred" Return="check" />
276
277    <CustomAction Id="WixSchedFirewallExceptionsInstall"
278                                                  BinaryKey="WixFirewallCA" DllEntry="SchedFirewallExceptionsInstall"   Impersonate="no" Execute="immediate" Return="check" />
279    <CustomAction Id="WixSchedFirewallExceptionsUninstall"
280                                                  BinaryKey="WixFirewallCA" DllEntry="SchedFirewallExceptionsUninstall" Impersonate="no" Execute="immediate" Return="check" />
281                <CustomAction Id="WixRollbackFirewallExceptionsInstall"
282                                                  BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions"           Impersonate="no" Execute="rollback" Return="check" />
283    <CustomAction Id="WixExecFirewallExceptionsInstall"
284                                                  BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions"           Impersonate="no" Execute="deferred" Return="check" />
285                <CustomAction Id="WixRollbackFirewallExceptionsUninstall"
286                                                  BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions"           Impersonate="no" Execute="rollback" Return="check" />
287    <CustomAction Id="WixExecFirewallExceptionsUninstall"
288                                                  BinaryKey="WixFirewallCA" DllEntry="ExecFirewallExceptions"           Impersonate="no" Execute="deferred" Return="check" />
289
290
291                <Binary Id='InstallerHelper' SourceFile='$(var.Helpers)/main_dll.dll' />
292                <Binary Id='WixFirewallCA' SourceFile='$(var.Helpers)/fw_dll.dll' />
293
294                <InstallExecuteSequence>
295                        <RemoveExistingProducts After='InstallInitialize'/>
296      <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWAPPFOUND</Custom>
297      <Custom Action="ScheduleWriteConfig" After='InstallFiles' />
298      <Custom Action="SchedServiceInstall" After="InstallFiles" />
299      <Custom Action="SchedServiceUnInstall" Before="RemoveFiles" />
300      <Custom Action="SchedStopAllServices" Before="RemoveFiles" />
301
302      <Custom Action="WixSchedFirewallExceptionsUninstall" Before="RemoveFiles">
303                                <![CDATA[ VersionNT >= 501 AND (ServicePackLevel >= 2 OR VersionNT >= 600) ]]>
304                        </Custom>
305                        <Custom Action="WixSchedFirewallExceptionsInstall" After="InstallFiles">
306                                <![CDATA[ VersionNT >= 501 AND (ServicePackLevel >= 2 OR VersionNT >= 600) ]]>
307                        </Custom>
308                </InstallExecuteSequence>
309
310                <InstallUISequence>
311                        <Custom Action="PreventDowngrading" After="FindRelatedProducts">NEWAPPFOUND</Custom>
312                        <Custom Action="NeedUninstall" After="FindRelatedProducts" />
313                </InstallUISequence>
314
315                <Property Id="ALLUSERS"><![CDATA[2]]></Property>
316
317                <!-- ### User Interfaces ### -->
318                <UIRef Id="WixUI_Mondo" />
319                <UIRef Id="WixUI_ErrorProgressText" />
320
321                <!-- ### Icons -->
322                <Icon Id="nscp.exe" SourceFile="$(var.Source)/nscp.exe" />
323                <!--
324                <Icon Id="nstray.exe" SourceFile="$(var.Source)/nstray.exe" />
325                          -->
326        </Product>
327</Wix>
Note: See TracBrowser for help on using the repository browser.