VirtualBox

source: vbox/trunk/src/VBox/Installer/win/VirtualBox.wxs@ 37515

Last change on this file since 37515 was 37289, checked in by vboxsync, 14 years ago

Windows host installaer/VBoxNetCfg: Major overhaul for supporting Windows Installer XML 3.5, fixed VBoxInstallHelper logging, coding style, added missing installer icons.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 44.9 KB
Line 
1<?xml version="1.0"?>
2<!--
3 VirtualBox Windows Installation Script (WiX)
4
5 Copyright (C) 2006-2011 Oracle Corporation
6
7 This file is part of VirtualBox Open Source Edition (OSE), as
8 available from http://www.virtualbox.org. This file is free software;
9 you can redistribute it and/or modify it under the terms of the GNU
10 General Public License (GPL) as published by the Free Software
11 Foundation, in version 2 as it comes in the "COPYING" file of the
12 VirtualBox OSE distribution. VirtualBox OSE is distributed in the
13 hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
14-->
15
16<?define Property_RegKey = "Software\$(env.VBOX_VENDOR_SHORT)\VirtualBox" ?>
17<?define Property_RegKeyInstall = "Software\$(env.VBOX_VENDOR_SHORT)\VirtualBox\Install" ?>
18<?define Property_Version = "$(env.VBOX_VERSION_STRING_RAW)" ?>
19<?define Property_VersionExt = "$(env.VBOX_VERSION_STRING)" ?>
20<?define Property_Upgrade = "yes" ?>
21
22<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
23 <?define Property_ProgramFiles = "ProgramFiles64Folder" ?>
24 <?define Property_Platform = "x64" ?>
25 <?define Property_Win64 = "yes" ?>
26
27<?if $(env.VBOX_SIGNING_MODE) != none ?>
28 <?define Property_DriverLegacy = "no" ?>
29<?else ?>
30 <?define Property_DriverLegacy = "yes" ?>
31<?endif ?>
32
33<?else ?>
34 <?define Property_ProgramFiles = "ProgramFilesFolder" ?>
35 <?define Property_Platform = "x86" ?>
36 <?define Property_Win64 = "no" ?>
37
38<?if $(env.VBOX_SIGNING_MODE) != none ?>
39 <!-- Note: Settings this to 'no' breaks win2k installs (!) -->
40 <?define Property_DriverLegacy = "yes" ?>
41<?else ?>
42 <?define Property_DriverLegacy = "yes" ?>
43<?endif ?>
44
45<?endif ?>
46
47<?if $(env.VBOX_WITH_COMBINED_PACKAGE) = "yes" ?>
48 <?define Property_DiskIdCommon = "2" ?>
49<?else ?>
50 <?define Property_DiskIdCommon = "1" ?>
51<?endif ?>
52
53<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
54 xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
55
56 <!-- Note: GUIDs in WiX *must* be uppercase! -->
57 <!-- Always include an upgrade ID or otherwise upgrade installation will not be possible. When doing
58 a major upgrade (more than just fixing a few files) change the product GUID. -->
59
60 <!-- Update / Upgrade policies:
61 Update Type Package Code Product Version Product Code Upgrade Code
62 Small update change don't change don't change don't change
63 Minor update change change don't change don't change
64 Major upgrade change change change don't change -->
65
66 <!-- Old product ID: <Product Id="B59FE77B-738F-4f1c-AB48-3104895AF676"
67 Old upgrade code of innotek: UpgradeCode="F5FFAEBF-97AE-4038-8F91-4DE719456127" -->
68
69 <Product Id="*"
70 UpgradeCode="C4BAD770-BFE8-4D2C-A592-693028A7215B"
71 Name="$(env.VBOX_PRODUCT) $(env.VBOX_VERSION_STRING)"
72 Language="!(loc.LANG)"
73 Codepage="1252"
74 Version="$(var.Property_Version)"
75 Manufacturer="$(env.VBOX_VENDOR)">
76
77 <!-- Package GUIDs must be different for each package. The "???" directs WiX to create one. -->
78 <Package Id="*" Keywords="Installer"
79 Description="$(env.VBOX_PRODUCT) $(var.Property_VersionExt) installation package"
80 Comments="$(env.VBOX_PRODUCT) installation package"
81 Manufacturer="$(env.VBOX_VENDOR)"
82 InstallerVersion="200"
83 Compressed="yes"
84 InstallPrivileges="elevated"
85 Platform="$(var.Property_Platform)"/>
86
87 <!-- *************************** Upgrade packages only ******************************* -->
88 <!-- Minimum and Maximum specify the range of versions we are supposed to update with this upgrade.
89 IncludeMaximum and IncludeMinimum specify whether the bound value is actually included in the range or not
90 (IncludeMaximum = yes meaning to find versions below or equal to the version specified in Maximum while
91 IncludeMaximum = no only finds those below the Maximum).
92 OnlyDetect tells the installer not to remove the previous product. This is useful as long as we
93 only change files in the package. -->
94
95 <Upgrade Id="C4BAD770-BFE8-4D2C-A592-693028A7215B"> <!-- Upgrade of Sun xVM VirtualBox >= v1.6.0 -->
96
97 <!-- Upgrade is flagged if current-install is newer than or equal to package - TODO: should make a dialog appear asking user to confirm downgrade. -->
98 <!--- Setting "OnlyDetect" to "no" makes the installer uninstall an already newer installed version. -->
99 <UpgradeVersion Property="NEWERVERSIONDETECTED" Minimum="$(var.Property_Version)" OnlyDetect="no" />
100
101 <!-- Flag is set if the install will trigger an upgrade of an existing install -->
102 <UpgradeVersion Property="PREVIOUSVERSIONSINSTALLED" Minimum="1.0.0.0" Maximum="$(var.Property_Version)" IncludeMaximum="yes" />
103
104 </Upgrade>
105
106 <!-- The product's icon table. -->
107 <Icon Id="IconVirtualBox" SourceFile="$(env.VBOX_WINDOWS_ICON_FILE)" />
108
109 <!-- Global properties. -->
110 <Property Id="ARPPRODUCTICON">IconVirtualBox</Property>
111 <Property Id="ARPURLINFOABOUT">http://www.virtualbox.org</Property>
112 <Property Id="ARPURLUPDATEINFO">http://www.virtualbox.org</Property>
113 <Property Id="INSTALLDESKTOPSHORTCUT" Value="1"></Property>
114 <Property Id="INSTALLQUICKLAUNCHSHORTCUT" Value="1"></Property>
115 <Property Id="STARTVBOX" Value="1"></Property>
116
117 <!-- Install the product for all users on the system -->
118 <Property Id="ALLUSERS"><![CDATA[1]]></Property>
119
120 <!-- Make sure installation will not start on anything other but the NT family -->
121<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
122 <Condition Message="!(loc.Only64Bit)">
123 VersionNT64
124 </Condition>
125<?else ?>
126 <Condition Message="!(loc.Only32Bit)">
127 NOT VersionNT64
128 </Condition>
129
130 <Condition Message="!(loc.WrongOS)">
131 NOT VersionNT=500 AND NOT Version9X AND NOT VersionNT64
132 </Condition>
133
134<?endif ?>
135
136 <Condition Message="!(loc.NeedAdmin)">
137 Privileged
138 </Condition>
139
140 <!-- Force overwriting all files and re-create shortcuts to guarantee a working environment -->
141 <Property Id='REINSTALLMODE' Value='amus'/>
142
143 <!-- Custom actions -->
144
145 <!-- Figure out where a previous installation was, if any -->
146<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
147 <CustomAction Id="ca_OriginalTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[ProgramFiles64Folder]\$(env.VBOX_VENDOR_SHORT)\VirtualBox" />
148
149 <Property Id="EXISTINGINSTALLDIR" Secure="yes">
150 <RegistrySearch Id="RegistryGetInstallPath" Root="HKLM" Key="$(var.Property_RegKey)" Name="InstallDir" Type="raw" Win64="$(var.Property_Win64)"/>
151 </Property>
152 <CustomAction Id="ca_DefaultTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[EXISTINGINSTALLDIR]" />
153<?else ?>
154 <CustomAction Id="ca_OriginalTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[ProgramFilesFolder]\$(env.VBOX_VENDOR_SHORT)\VirtualBox" />
155
156 <Property Id="EXISTINGINSTALLDIR" Secure="yes">
157 <RegistrySearch Id="RegistryGetInstallPath" Root="HKLM" Key="$(var.Property_RegKey)" Name="InstallDir" Type="raw" Win64="$(var.Property_Win64)"/>
158 </Property>
159 <CustomAction Id="ca_DefaultTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[EXISTINGINSTALLDIR]" />
160<?endif ?>
161
162 <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
163 <CustomAction Id="ca_CheckSerial" BinaryKey="VBoxInstallHelper" DllEntry="CheckSerial" Impersonate="no"/>
164 <CustomAction Id="ca_InstallPythonAPI" BinaryKey="VBoxInstallHelper" DllEntry="InstallPythonAPI" Execute="deferred" Impersonate="no"/>
165 <CustomAction Id="ca_InstallBranding" BinaryKey="VBoxInstallHelper" DllEntry="InstallBranding" Execute="deferred" Impersonate="no"/>
166 <CustomAction Id="ca_UninstallBranding" BinaryKey="VBoxInstallHelper" DllEntry="UninstallBranding" Execute="deferred" Impersonate="no"/>
167
168 <CustomAction Id="ca_UninstallTAPInstances" BinaryKey="VBoxInstallHelper"
169 DllEntry="UninstallTAPInstances" Execute="deferred" Return="check" Impersonate="no"/>
170
171<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
172 <CustomAction Id="ca_CreateHostOnlyInterfaceArgs" Property="ca_CreateHostOnlyInterface" Value="[INSTALLDIR]" Execute="immediate"/>
173 <CustomAction Id="ca_CreateHostOnlyInterface" BinaryKey="VBoxInstallHelper" DllEntry="CreateHostOnlyInterface" Execute="deferred" Return="check" Impersonate="no"/>
174
175 <CustomAction Id="ca_RemoveHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="RemoveHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
176
177 <CustomAction Id="ca_InstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
178 <CustomAction Id="ca_InstallNetFltArgs" Property="ca_InstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
179
180 <CustomAction Id="ca_RollbackInstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="rollback" Impersonate="no"/>
181 <CustomAction Id="ca_RollbackInstallNetFltArgs" Property="ca_RollbackInstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
182
183 <CustomAction Id="ca_UninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
184 <CustomAction Id="ca_UninstallNetFltArgs" Property="ca_UninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
185
186 <CustomAction Id="ca_RollbackUninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="rollback" Impersonate="no"/>
187 <CustomAction Id="ca_RollbackUninstallNetFltArgs" Property="ca_RollbackUninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
188<?endif ?>
189
190 <CustomAction Id="ca_StartVBox" FileKey="file_VirtualBox.exe" ExeCommand="" Return="asyncNoWait" Impersonate="yes" />
191
192 <!-- Detect old Sun installation -->
193 <!-- Force a manual uninstall of an already installed Sun VirtualBox version first -->
194 <!--<Property Id="VBOXSUN">
195 <RegistrySearch Id="RegSearchSunVersion" Root="HKLM" Key="SOFTWARE\Sun\VirtualBox" Name="Version" Type="raw" Win64="$(var.Property_Win64)"/>
196 </Property>
197 <Condition Message="!(loc.SunFound)">
198 NOT VBOXSUN
199 </Condition>-->
200
201 <!-- Detect old innotek installation -->
202 <!-- Force a manual uninstall of an already installed innotek VirtualBox version first -->
203 <Property Id="VBOXINNOTEK">
204 <RegistrySearch Id="RegSearchInnotekVersion" Root="HKLM" Key="SOFTWARE\Innotek\VirtualBox" Name="Version" Type="raw" Win64="$(var.Property_Win64)"/>
205 </Property>
206 <Condition Message="!(loc.InnotekFound)">
207 NOT VBOXINNOTEK
208 </Condition>
209
210 <Media Id="1" Cabinet="product.cab" EmbedCab="yes" />
211<?if $(env.VBOX_WITH_COMBINED_PACKAGE) = "yes" ?>
212 <Media Id="2" Cabinet="common.cab" EmbedCab="no" CompressionLevel="high" />
213<?endif ?>
214
215 <!-- Here comes the file/directory list. -->
216 <Directory Id="TARGETDIR" Name="SourceDir">
217 <Directory Id="$(var.Property_ProgramFiles)" Name="PFiles">
218 <Directory Id="INSTALLDIR" Name="$(env.VBOX_PRODUCT)">
219
220<?if $(env.VBOX_WITH_DOCS_PACKING) = "yes" ?>
221 <Directory Id="dir_Documents" Name="doc">
222 <!-- The documentation is a separate component. This allows to split the install process
223 into pieces if ever necessary. Maintenance is easier, too. The following component
224 will be installed in the "doc" folder. -->
225 <Component Id="cp_Docs" Guid="40BD12C5-89A8-4B81-8A5E-5EEE2C2763C4">
226 <?include $(env.PATH_TARGET)\Files_Doc.wxi ?>
227 </Component>
228 </Directory>
229<?endif ?>
230 <!-- Device driver directory -->
231 <Directory Id="dir_Drivers" Name="drivers">
232 <Directory Id="dir_VBoxDrv" Name="vboxdrv">
233 <Component Id="cp_VBoxDrv" Guid="D3E2F2BB-569F-46A2-836C-BDF30FF1EDF8" Win64="$(var.Property_Win64)">
234 <difxapp:Driver AddRemovePrograms="no" ForceInstall="yes"
235 Legacy="$(var.Property_DriverLegacy)" Sequence="2" PlugAndPlayPrompt="no"/>
236 <File Id="file_VBoxDrv.sys" Name="VBoxDrv.sys" KeyPath="yes"
237 Source="$(env.PATH_OUT)\bin\VBoxDrv.sys"/>
238 <File Id="file_VBoxDrv.inf" Name="VBoxDrv.inf"
239 Source="$(env.PATH_OUT)\bin\VBoxDrv.inf" />
240<?if $(env.VBOX_SIGNING_MODE) != none ?>
241 <File Id="file_VBoxDrv.cat" Name="VBoxDrv.cat"
242 Source="$(env.PATH_OUT)\bin\VBoxDrv.cat" />
243<?endif ?>
244 </Component>
245 </Directory>
246
247 <Directory Id="dir_USB" Name="USB">
248 <Directory Id="dir_USBFilter" Name="filter">
249 <Component Id="cp_USBFilterDriver" Guid="B7D782D2-96DF-4775-A0E1-A76CF7B04B65" Win64="$(var.Property_Win64)">
250 <difxapp:Driver AddRemovePrograms="no" ForceInstall="yes"
251 Legacy="$(var.Property_DriverLegacy)" Sequence="0" PlugAndPlayPrompt="no"/>
252 <File Id="file_VBoxUSBMon.sys" Name="VBoxUSBMon.sys"
253 Source="$(env.PATH_OUT)\bin\VBoxUSBMon.sys" />
254 <File Id="file_VBoxUSBMon.inf" Name="VBoxUSBMon.inf"
255 Source="$(env.PATH_OUT)\bin\VBoxUSBMon.inf" />
256<?if $(env.VBOX_SIGNING_MODE) != none ?>
257 <File Id="file_VBoxUSBMon.cat" Name="VBoxUSBMon.cat"
258 Source="$(env.PATH_OUT)\bin\VBoxUSBMon.cat" />
259<?endif ?>
260 </Component>
261 </Directory>
262
263 <Directory Id="dir_USBDevice" Name="device">
264 <Component Id="cp_USBDeviceDriver" Guid="010FE46A-E358-43E2-8BDC-38BC8BEC82E0" Win64="$(var.Property_Win64)">
265 <difxapp:Driver AddRemovePrograms="no" ForceInstall="yes"
266 Legacy="$(var.Property_DriverLegacy)" Sequence="0" PlugAndPlayPrompt="no"/>
267 <File Id="file_VBoxUSB.sys" Name="VBoxUSB.sys"
268 Source="$(env.PATH_OUT)\bin\VBoxUSB.sys" />
269 <File Id="file_VBoxUSB.inf" Name="VBoxUSB.inf"
270 Source="$(env.PATH_OUT)\bin\VBoxUSB.inf" />
271<?if $(env.VBOX_SIGNING_MODE) != none ?>
272 <File Id="file_VBoxUSB.cat" Name="VBoxUSB.cat"
273 Source="$(env.PATH_OUT)\bin\VBoxUSB.cat" />
274<?endif ?>
275 </Component>
276 </Directory>
277 </Directory>
278
279<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
280 <Directory Id="dir_Network" Name="network">
281 <Directory Id="dir_NetFlt" Name="netflt">
282 <Component Id="cp_NetFltDriver" Guid="F0A02F6B-A349-42f8-A2EB-569DCAAAF846" Win64="$(var.Property_Win64)">
283 <File Id="file_VBoxNetFlt.sys" Name="VBoxNetFlt.sys" KeyPath="yes"
284 Source="$(env.PATH_OUT)\bin\VBoxNetFlt.sys" Checksum="yes"/>
285 <File Id="file_VBoxNetFltNobj.sys" Name="VBoxNetFltNobj.dll"
286 Source="$(env.PATH_OUT)\bin\VBoxNetFltNobj.dll" Checksum="yes"/>
287 <File Id="file_VBoxNetFltM.inf" Name="VBoxNetFltM.inf"
288 Source="$(env.PATH_OUT)\bin\VBoxNetFltM.inf" />
289 <File Id="file_VBoxNetFlt.inf" Name="VBoxNetFlt.inf"
290 Source="$(env.PATH_OUT)\bin\VBoxNetFlt.inf" />
291<?if $(env.VBOX_SIGNING_MODE) != none ?>
292 <File Id="file_VBoxNetFlt.cat" Name="VBoxNetFlt.cat"
293 Source="$(env.PATH_OUT)\bin\VBoxNetFlt.cat" />
294<?endif ?>
295 </Component>
296 </Directory>
297
298 <Directory Id="dir_NetAdp" Name="netadp">
299 <Component Id="cp_NetAdpDriver" Guid="7adf3e12-af3c-4d36-8bec-36d5064cf84f" Win64="$(var.Property_Win64)">
300 <File Id="file_VBoxNetAdp.sys" Name="VBoxNetAdp.sys" KeyPath="yes"
301 Source="$(env.PATH_OUT)\bin\VBoxNetAdp.sys" Checksum="yes"/>
302 <File Id="file_VBoxNetAdp.inf" Name="VBoxNetAdp.inf"
303 Source="$(env.PATH_OUT)\bin\VBoxNetAdp.inf" />
304<?if $(env.VBOX_SIGNING_MODE) != none ?>
305 <File Id="file_VBoxNetAdp.cat" Name="VBoxNetAdp.cat"
306 Source="$(env.PATH_OUT)\bin\VBoxNetAdp.cat" />
307<?endif ?>
308 </Component>
309 </Directory>
310 </Directory>
311<?endif ?>
312 </Directory> <!-- Directory "drivers" -->
313
314
315 <!-- National Language Support directory -->
316 <Directory Id="dir_NLS" Name="nls">
317 <Component Id="cp_NLS" Guid="D63517D7-1CF3-4D06-B3EE-C561E323069B" Win64="$(var.Property_Win64)">
318 <!-- Include the autogenerated NLS file list -->
319 <?include $(env.PATH_TARGET)\VBoxGuiNLS.wxi ?>
320 </Component>
321 </Directory>
322
323 <!-- COM components have a separate entry mainly because of the KeyPath attribute (that hints the
324 TypeLib element where to take the TLB resource from) may appear only once per Component. -->
325 <Component Id="cp_MainCOM" Guid="CD4A3C6C-C2D5-428D-90A1-B6DA3D0777D6" Win64="$(var.Property_Win64)">
326
327 <!-- File ID *must not* be changed because of our typelib template generation file! -->
328 <File Id="VBoxSVC" Name="VBoxSVC.exe"
329 Source="$(env.PATH_OUT)\bin\VBoxSVC.exe">
330 </File>
331
332 <!-- We set KeyPath on this file to instruct TypeLib to read the TLB resource from it
333 and create appropriate Interface registry entries. Note that the same TLB is present
334 in VBoxSVC.exe - it's just a matter of choice which one to use -->
335 <!-- File ID *must not* be changed because of our typelib template generation file! -->
336 <File Id="VBoxC" Name="VBoxC.dll"
337 Source="$(env.PATH_OUT)\bin\VBoxC.dll" KeyPath="yes">
338 </File>
339
340 <!-- Include the autogenerated TypeLib block -->
341 <?include $(env.PATH_TARGET)\VirtualBox_TypeLib.wxi ?>
342
343 </Component>
344
345 <!--
346
347 <Component Id="Cp_StartMenuShortcut" Guid="1C137D24-E599-47BD-98D0-2F62F202A8EA" Win64="$(var.Property_Win64)">
348 <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)" Type="string"
349 Value="installed" KeyPath="yes" />
350 <Shortcut Id="ShortcutStartMenuVBox" Directory="ProgramMenuDir"
351 Name="VirtualBox" WorkingDirectory="INSTALLDIR" Advertise="no" Target="VirtualBox.exe" />
352 <RemoveFolder Id="ShortcutStartMenuVBoxRemove" On="uninstall" />
353 </Component>-->
354
355 <!---->
356
357 <!-- All Binaries, DLLs (except COM) and drivers are in one component because they belong together. Additional
358 binaries e.g. test tools, utilities etc. should be in another component so they"re clearly separated. -->
359 <Component Id="cp_MainBinaries" Guid="5C8FE57A-F744-4DE0-AA3F-A563F486AD98" Win64="$(var.Property_Win64)">
360
361 <!-- Set required environment variables. -->
362 <Environment Id="env_VBoxInstallDir" Action="set" Name="VBOX_INSTALL_PATH"
363 System="yes" Part="last" Permanent="no" Value="[INSTALLDIR]" />
364
365 <!-- Register file extensions. Note: Extension Id's *must not* be changed! These specify the actual
366 file extension to handle. Also, here would be the place to add more fancy DDE stuff later.
367 Important: The IDs in "IconIndex" *must* be matching "Resources\resource.h". -->
368 <ProgId Id="progId_VirtualBox.Shell.vbox" Description="VirtualBox Machine Definition" Icon="file_VBoxRes.dll" IconIndex="-201">
369 <Extension Id="vbox" ContentType="application/x-virtualbox-vbox">
370 <Verb Id="open" Command="Open" TargetFile="file_VirtualBox.exe" Argument="&quot;%1&quot;" />
371 </Extension>
372 </ProgId>
373 <ProgId Id="progId_VirtualBox.Shell.vbox-extpack" Description="VirtualBox Extension Pack" Icon="file_VBoxRes.dll" IconIndex="-202">
374 <Extension Id="vbox-extpack" ContentType="application/x-virtualbox-vbox-extpack">
375 <Verb Id="open" Command="Open" TargetFile="file_VirtualBox.exe" Argument="&quot;%1&quot;" />
376 </Extension>
377 </ProgId>
378 <ProgId Id="progId_VirtualBox.Shell.ovf" Description="Open Virtualization Format" Icon="file_VBoxRes.dll" IconIndex="-301">
379 <Extension Id="ovf" ContentType="application/x-virtualbox-ovf">
380 <Verb Id="open" Command="Open" TargetFile="file_VirtualBox.exe" Argument="&quot;%1&quot;" />
381 </Extension>
382 </ProgId>
383 <ProgId Id="progId_VirtualBox.Shell.ova" Description="Open Virtualization Format Archive" Icon="file_VBoxRes.dll" IconIndex="-302">
384 <Extension Id="ova" ContentType="application/x-virtualbox-ova">
385 <Verb Id="open" Command="Open" TargetFile="file_VirtualBox.exe" Argument="&quot;%1&quot;" />
386 </Extension>
387 </ProgId>
388
389 <!-- Files -->
390<?if $(env.VBOX_WITH_DOCS_PACKING) = "yes" ?>
391 <!-- Include all user manual .CHM files (file is generated by makefile). -->
392 <?include $(env.PATH_TARGET)\Files_Main.wxi ?>
393<?endif ?>
394 <!-- Include all license files (file is generated by makefile). -->
395 <?include $(env.PATH_TARGET)\Files_License.wxi ?>
396
397 <!-- Frontends -->
398 <File Id="file_VBoxManage.exe" Name="VBoxManage.exe"
399 Source="$(env.PATH_OUT)\bin\VBoxManage.exe" />
400 <File Id="file_VBoxHeadless.exe" Name="VBoxHeadless.exe"
401 Source="$(env.PATH_OUT)\bin\VBoxHeadless.exe">
402 <!-- Create a simple shortcut for VBoxVRDP, which is not present anymore, pointing to VBoxHeadless.exe -->
403 <!-- <Shortcut Id="ShortcutVBoxVRDP" Directory="INSTALLDIR" Name="VBoxVRDP" Show="normal" WorkingDirectory="INSTALLDIR"/> -->
404 </File>
405 <File Id="file_VBoxBalloonCtrl.exe" Name="VBoxBalloonCtrl.exe"
406 Source="$(env.PATH_OUT)\bin\VBoxBalloonCtrl.exe"/>
407
408 <!-- Misc tools -->
409 <File Id="file_VBoxNetDHCP.exe" Name="VBoxNetDHCP.exe"
410 Source="$(env.PATH_OUT)\bin\VBoxNetDHCP.exe"/>
411<?if $(env.VBOX_WITH_EXTPACK) = "yes" ?>
412 <File Id="file_VBoxExtPackHelperApp.exe" Name="VBoxExtPackHelperApp.exe"
413 Source="$(env.PATH_OUT)\bin\VBoxExtPackHelperApp.exe"/>
414<?endif ?>
415 <!-- VBox DLL files -->
416 <File Id="file_VBoxDD.dll" Name="VBoxDD.dll"
417 Source="$(env.PATH_OUT)\bin\VBoxDD.dll" />
418 <File Id="file_VBoxDD2.dll" Name="VBoxDD2.dll"
419 Source="$(env.PATH_OUT)\bin\VBoxDD2.dll" />
420 <File Id="file_VBoxDDU.dll" Name="VBoxDDU.dll"
421 Source="$(env.PATH_OUT)\bin\VBoxDDU.dll" />
422 <File Id="file_VBoxRT.dll" Name="VBoxRT.dll"
423 Source="$(env.PATH_OUT)\bin\VBoxRT.dll" />
424 <File Id="file_VBoxREM.dll" Name="VBoxREM.dll"
425 Source="$(env.PATH_OUT)\bin\VBoxREM.dll" />
426<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
427 <File Id="file_VBoxREM2.rel" Name="VBoxREM2.rel"
428 Source="$(env.PATH_OUT)\bin\VBoxREM2.rel" />
429<?else ?>
430 <File Id="file_VBoxREM32.dll" Name="VBoxREM32.dll"
431 Source="$(env.PATH_OUT)\bin\VBoxREM32.dll" />
432 <File Id="file_VBoxREM64.dll" Name="VBoxREM64.dll"
433 Source="$(env.PATH_OUT)\bin\VBoxREM64.dll" />
434<?endif ?>
435 <File Id="file_VBoxVMM.dll" Name="VBoxVMM.dll"
436 Source="$(env.PATH_OUT)\bin\VBoxVMM.dll" />
437<?if $(env.VBOX_WITH_VRDP) = "yes" ?>
438 <File Id="file_VBoxVRDP.dll" Name="VBoxVRDP.dll"
439 Source="$(env.PATH_OUT)\bin\VBoxVRDP.dll" />
440<?endif ?>
441 <File Id="file_VBoxSharedFolders.dll" Name="VBoxSharedFolders.dll"
442 Source="$(env.PATH_OUT)\bin\VBoxSharedFolders.dll" />
443 <File Id="file_VBoxSharedClipboard.dll" Name="VBoxSharedClipboard.dll"
444 Source="$(env.PATH_OUT)\bin\VBoxSharedClipboard.dll" />
445<?if $(env.VBOX_WITH_GUEST_PROPS) = "yes" ?>
446 <File Id="file_VBoxGuestPropSvc.dll" Name="VBoxGuestPropSvc.dll"
447 Source="$(env.PATH_OUT)\bin\VBoxGuestPropSvc.dll" />
448<?endif ?>
449<?if $(env.VBOX_WITH_GUEST_CONTROL) = "yes" ?>
450 <File Id="file_VBoxGuestControlSvc.dll" Name="VBoxGuestControlSvc.dll"
451 Source="$(env.PATH_OUT)\bin\VBoxGuestControlSvc.dll" />
452<?endif ?>
453 <File Id="file_VBoxAuth.dll" Name="VBoxAuth.dll"
454 Source="$(env.PATH_OUT)\bin\VBoxAuth.dll" />
455 <File Id="file_VBoxAuthSimple.dll" Name="VBoxAuthSimple.dll"
456 Source="$(env.PATH_OUT)\bin\VBoxAuthSimple.dll" />
457
458 <!-- Include resource DLL (icons, ...). -->
459 <File Id="file_VBoxRes.dll" Name="VBoxRes.dll" DiskId="$(var.Property_DiskIdCommon)"
460 Source="$(env.PATH_OUT)\bin\VBoxRes.dll" />
461
462 <File Id="file_VMMGC.gc" Name="VMMGC.gc"
463 Source="$(env.PATH_OUT)\bin\VMMGC.gc" />
464 <File Id="file_VBoxDDGC.gc" Name="VBoxDDGC.gc"
465 Source="$(env.PATH_OUT)\bin\VBoxDDGC.gc" />
466 <File Id="file_VBoxDD2GC.gc" Name="VBoxDD2GC.gc"
467 Source="$(env.PATH_OUT)\bin\VBoxDD2GC.gc" />
468
469 <File Id="file_VMMR0.r0" Name="VMMR0.r0"
470 Source="$(env.PATH_OUT)\bin\VMMR0.r0" />
471 <File Id="file_VBoxDDR0.r0" Name="VBoxDDR0.r0"
472 Source="$(env.PATH_OUT)\bin\VBoxDDR0.r0" />
473 <File Id="file_VBoxDD2R0.r0" Name="VBoxDD2R0.r0"
474 Source="$(env.PATH_OUT)\bin\VBoxDD2R0.r0" />
475
476<?if $(env.VBOX_WITH_CROGL) = "yes" ?>
477 <File Id="file_VBoxTestOGL.exe" Name="VBoxTestOGL.exe"
478 Source="$(env.PATH_OUT)\bin\VBoxTestOGL.exe" />
479<?endif ?>
480 <!-- Qt frontend -->
481 <File Id="file_VirtualBox.exe" Name="VirtualBox.exe"
482 Source="$(env.PATH_OUT)\bin\VirtualBox.exe">
483 </File>
484 <File Id="file_QtCoreVBox4.dll" Name="QtCoreVBox4.dll"
485 Source="$(env.PATH_OUT)\bin\QtCoreVBox4.dll" />
486 <File Id="file_QtGuiVBox4.dll" Name="QtGuiVBox4.dll"
487 Source="$(env.PATH_OUT)\bin\QtGuiVBox4.dll" />
488 <File Id="file_QtNetworkVBox4.dll" Name="QtNetworkVBox4.dll"
489 Source="$(env.PATH_OUT)\bin\QtNetworkVBox4.dll" />
490<?if $(env.VBOX_WITH_DEBUGGER_GUI) = "yes" ?>
491 <File Id="file_VBoxDbg.dll" Name="VBoxDbg.dll"
492 Source="$(env.PATH_OUT)\bin\VBoxDbg.dll" />
493<?endif ?>
494<?if $(env.VBOX_GUI_USE_QGL) = "yes" ?>
495 <File Id="file_QtOpenGLVBox4.dll" Name="QtOpenGLVBox4.dll"
496 Source="$(env.PATH_OUT)\bin\QtOpenGLVBox4.dll" />
497<?endif?>
498
499<?if $(env.VBOX_USE_VCC80) = "yes" ?>
500 <!-- MS v8 Runtime DLL files (private assembly) -->
501 <File Id="file_Microsoft.VC80.CRT.manifest" Name="Microsoft.VC80.CRT.manifest"
502 Source="$(env.PATH_OUT)\bin\Microsoft.VC80.CRT\Microsoft.VC80.CRT.manifest" />
503 <File Id="file_msvcr80.dll" Name="msvcr80.dll"
504 Source="$(env.PATH_OUT)\bin\Microsoft.VC80.CRT\msvcr80.dll" />
505 <File Id="file_msvcp80.dll" Name="msvcp80.dll"
506 Source="$(env.PATH_OUT)\bin\Microsoft.VC80.CRT\msvcp80.dll" />
507<?endif?>
508
509 <!-- MS v7 Runtime DLL files -->
510<?if $(env.VBOX_USE_VCC80) != "yes" ?>
511 <File Id="file_msvcp71.dll" Name="msvcp71.dll"
512 Source="$(env.PATH_OUT)\bin\msvcp71.dll" />
513 <File Id="file_msvcrt.dll" Name="msvcrt.dll"
514 Source="$(env.PATH_OUT)\bin\msvcrt.dll" />
515<?endif?>
516<?if $(env.BUILD_TARGET_ARCH) != "amd64" ?>
517 <File Id="msvcrdll" Name="msvcr71.dll"
518 Source="$(env.PATH_OUT)\bin\msvcr71.dll" />
519<?endif?>
520 <!-- EFI firmware -->
521<?if $(env.VBOX_WITH_EFIFW_PACKING) = "yes" ?>
522 <File Id="file_VBoxEFI32.fd" Name="VBoxEFI32.fd" DiskId="$(var.Property_DiskIdCommon)"
523 Source="$(env.PATH_OUT)\bin\VBoxEFI32.fd" />
524 <File Id="file_VBoxEFI64.fd" Name="VBoxEFI64.fd" DiskId="$(var.Property_DiskIdCommon)"
525 Source="$(env.PATH_OUT)\bin\VBoxEFI64.fd" />
526<?endif?>
527 <!-- VBox guest additions -->
528<?if $(env.VBOX_WITH_ADDITIONS_PACKING) = "yes" ?>
529 <?if $(env.VBOX_WITH_COMBINED_PACKAGE) = "yes" ?>
530 <File Id="file_VBoxGuestAdditions.iso" Name="VBoxGuestAdditions.iso" DiskId="2"
531 Source="$(env.PATH_MULTIARCH_GUEST_ADDITIONS_ISO)\VBoxGuestAdditions.iso" />
532 <?else ?>
533 <File Id="file_VBoxGuestAdditions.iso" Name="VBoxGuestAdditions.iso"
534 Source="$(env.PATH_OUT)\bin\additions\VBoxGuestAdditions.iso" />
535 <?endif ?>
536<?endif ?>
537 <!-- Include key for VBox version -->
538 <?include $(env.PATH_TARGET)\VBoxKey.wxi ?>
539
540 </Component> <!-- MainBinaries -->
541
542<?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
543 <!-- Qt accessible plugins -->
544 <Directory Id="dir_Accessible" Name="accessible">
545 <Component Id="cp_QtAccessible" Guid="12040EF9-D4A8-4FB2-A69C-CA2F5C354A45" Win64="$(var.Property_Win64)">
546 <File Id="file_qtaccessiblewidgets4.dll" Name="qtaccessiblewidgets4.dll"
547 Source="$(env.PATH_OUT)\bin\accessible\qtaccessiblewidgets4.dll" />
548 </Component>
549 </Directory>
550<?endif?>
551
552<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
553 <!-- Python bindings -->
554 <Directory Id="dir_SDK" Name="sdk">
555 <Directory Id="dir_SDKInstall" Name="install">
556 <Component Id="cp_VBoxPyInst" Guid="C9A40306-5102-11DE-A7BA-C3C555D89593" Win64="$(var.Property_Win64)">
557 <File Id="file_vboxapisetup.py" Name="vboxapisetup.py" DiskId="$(var.Property_DiskIdCommon)"
558 Source="$(env.PATH_OUT)\bin\sdk\installer\vboxapisetup.py" />
559 </Component>
560 <Directory Id="dir_SDKVBoxAPI" Name="vboxapi">
561 <Component Id="cp_VBoxPyMod" Guid="DF19CB76-5102-11DE-943B-13C755D89593" Win64="$(var.Property_Win64)">
562 <File Id="file___init__.py" Name="__init__.py" DiskId="$(var.Property_DiskIdCommon)"
563 Source="$(env.PATH_OUT)\bin\sdk\installer\vboxapi\__init__.py" />
564 <File Id="file_VirtualBox_constants.py" Name="VirtualBox_constants.py" DiskId="$(var.Property_DiskIdCommon)"
565 Source="$(env.PATH_OUT)\bin\sdk\installer\vboxapi\VirtualBox_constants.py" />
566 </Component>
567 </Directory>
568 </Directory>
569 </Directory>
570<?endif?>
571
572<?if $(env.VBOX_WITH_CROGL) = "yes" ?>
573 <Component Id="cp_VBoxCROpenGL" Guid="874A1297-835A-491D-8A9D-7E723BC29EE7" Win64="$(var.Property_Win64)">
574 <File Id="file_VBoxOGLhostcrutil.dll" Name="VBoxOGLhostcrutil.dll"
575 Source="$(env.PATH_OUT)\bin\VBoxOGLhostcrutil.dll" />
576 <File Id="file_VBoxOGLhosterrorspu.dll" Name="VBoxOGLhosterrorspu.dll"
577 Source="$(env.PATH_OUT)\bin\VBoxOGLhosterrorspu.dll" />
578 <File Id="file_VBoxOGLrenderspu.dll" Name="VBoxOGLrenderspu.dll"
579 Source="$(env.PATH_OUT)\bin\VBoxOGLrenderspu.dll" />
580 <File Id="file_VBoxSharedCrOpenGL.dll" Name="VBoxSharedCrOpenGL.dll"
581 Source="$(env.PATH_OUT)\bin\VBoxSharedCrOpenGL.dll" />
582 </Component>
583<?endif?>
584 <!-- SDL plugins -->
585 <Component Id="cp_VBoxSDLBinaries" Guid="F09D5FD9-E176-42B0-90A9-481BB18B0CB4" Win64="$(var.Property_Win64)">
586 <File Id="file_VBoxSDL.exe" Name="VBoxSDL.exe"
587 Source="$(env.PATH_OUT)\bin\VBoxSDL.exe" />
588 <File Id="file_SDL.dll" Name="SDL.dll"
589 Source="$(env.PATH_OUT)\bin\SDL.dll" />
590<?if $(env.VBOX_WITH_SECURELABEL) = "yes" ?>
591 <File Id="file_SDL_ttf.dll" Name="SDL_ttf.dll"
592 Source="$(env.PATH_OUT)\bin\SDL_ttf.dll" />
593<?endif?>
594 </Component> <!-- SDL plugins -->
595
596<?if $(env.VBOX_WITH_WEBSERVICES) = "yes" ?>
597 <!-- Webservice -->
598 <Component Id="cp_VBoxWebService" Guid="DD404F04-9874-43E9-AEE2-7762924D922E">
599 <File Id="file_VBoxWebSrv.exe" Name="VBoxWebSrv.exe"
600 Source="$(env.PATH_OUT)\bin\vboxwebsrv.exe" />
601 </Component>
602<?endif?>
603
604<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
605 <Component Id="cp_VBoxPythonBinding" Guid="293D7E11-78DA-4C31-AEED-AE2FE42F6881">
606 <Condition>PYTHON_INSTALLED</Condition>
607 </Component>
608<?endif?>
609 </Directory> <!-- Installation directory -->
610 </Directory> <!-- Windows program files directory -->
611
612 <!-- Set up special directory IDs for referencing to the start menu
613 or the Quick Launch bar.
614 See: http://msdn.microsoft.com/en-us/library/aa368276.aspx
615 http://wix.mindcapers.com/wiki/Shortcuts_in_WiX -->
616 <Directory Id="ProgramMenuFolder">
617 <Directory Id="dir_StartMenuVBox" Name="$(env.VBOX_PRODUCT)"/>
618 </Directory>
619
620 <Directory Id="DesktopFolder" Name="Desktop"/>
621
622 <Directory Id="AppDataFolder" Name="AppData">
623 <Directory Id="dir_AppDataMicrosoft" Name="Microsoft">
624 <Directory Id="dir_AppDataMSIE" Name="Internet Explorer">
625 <Directory Id="dir_QuicklaunchFolder" Name="Quick Launch"/>
626 </Directory>
627 </Directory>
628 </Directory>
629
630 <!-- Shortcut(s) in start menu -->
631 <Component Id="cp_StartMenuVBox" Guid="C2DC321A-CE63-40EE-8A98-724DF8BD12FB" Win64="$(var.Property_Win64)">
632 <Shortcut Id="sc_StartMenuVBox" Directory="dir_StartMenuVBox" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
633 Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
634 <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)"
635 Type="string" Value="installed" KeyPath="yes" />
636 <?include $(env.PATH_TARGET)\Shortcuts_StartMenu.wxi ?>
637 </Component>
638
639 <Component Id="cp_DesktopShortcut" Guid="668F8A1A-F5CE-48B3-BB1A-3042EE27B279" Win64="$(var.Property_Win64)">
640 <Condition>INSTALLDESKTOPSHORTCUT</Condition>
641 <Shortcut Id="sc_DesktopVBox" Directory="DesktopFolder" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
642 Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
643 <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)" Type="string"
644 Value="installed" KeyPath="yes" />
645 </Component>
646
647 <Component Id="cp_QuickLaunchVBox" Guid="CC19E026-938A-41CB-8E77-3F33296244B6" Win64="$(var.Property_Win64)">
648 <CreateFolder/>
649 <Condition>INSTALLQUICKLAUNCHSHORTCUT</Condition>
650 <Shortcut Id="sc_QuickLaunchVBox" Directory="dir_QuicklaunchFolder" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
651 Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
652 <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)"
653 Type="string" Value="installed" KeyPath="yes" />
654 </Component>
655 </Directory> <!-- TARGETDIR -->
656
657 <Feature Id="VBoxApplication" Title="VirtualBox Application" Level="1"
658 Description="!(loc.VB_App)"
659 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
660 Absent="disallow">
661
662 <ComponentRef Id="cp_StartMenuVBox" />
663 <ComponentRef Id="cp_DesktopShortcut" />
664 <ComponentRef Id="cp_QuickLaunchVBox" />
665
666<?if $(env.VBOX_WITH_DOCS_PACKING) = "yes" ?>
667 <ComponentRef Id="cp_Docs" />
668<?endif?>
669 <ComponentRef Id="cp_NLS" />
670 <ComponentRef Id="cp_MainCOM" />
671 <ComponentRef Id="cp_MainBinaries" />
672<?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
673 <ComponentRef Id="cp_QtAccessible" />
674<?endif?>
675<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
676 <ComponentRef Id="cp_VBoxPyInst" />
677 <ComponentRef Id="cp_VBoxPyMod" />
678<?endif?>
679
680<?if $(env.VBOX_WITH_CROGL) = "yes" ?>
681 <ComponentRef Id="cp_VBoxCROpenGL" />
682<?endif?>
683 <ComponentRef Id="cp_VBoxSDLBinaries" />
684<?if $(env.VBOX_WITH_WEBSERVICES) = "yes" ?>
685 <ComponentRef Id="cp_VBoxWebService" />
686<?endif?>
687 <ComponentRef Id="cp_VBoxDrv" />
688
689 <Feature Id="ft_VBoxUSB" Title="VirtualBox USB Support" Level="1"
690 Description="!(loc.VB_USBDriver)"
691 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand" >
692 <ComponentRef Id="cp_USBFilterDriver" />
693 <ComponentRef Id="cp_USBDeviceDriver" />
694 </Feature>
695
696<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
697 <Feature Id="ft_VBoxNetwork" Title="VirtualBox Networking" Level="1"
698 Description="!(loc.VB_Network)"
699 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand" >
700 <Feature Id="ft_VBoxNetworkFlt" Title="VirtualBox Bridged Networking" Level="1"
701 Description="!(loc.VB_NetFltDriver)"
702 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand" >
703 <ComponentRef Id="cp_NetFltDriver" />
704 </Feature>
705 <Feature Id="ft_VBoxNetworkAdp" Title="VirtualBox Host-Only Networking" Level="1"
706 Description="!(loc.VB_NetAdpDriver)"
707 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand" >
708 <ComponentRef Id="cp_NetAdpDriver" />
709 </Feature>
710 </Feature>
711<?endif?>
712
713<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
714 <Feature Id="ft_VBoxPython" Title="VirtualBox Python Support" Level="1"
715 Description="!(loc.VB_Python)"
716 ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand" >
717 <ComponentRef Id="cp_VBoxPythonBinding" />
718 </Feature>
719<?endif?>
720
721 </Feature>
722
723 <!-- Include user interface definition. -->
724 <?include UserInterface.wxi ?>
725
726 <InstallExecuteSequence>
727
728 <!-- AppSearch must be done before "RemoveExistingProducts" and before "FindRelatedProducts". -->
729 <AppSearch Sequence="1"></AppSearch>
730 <LaunchConditions After="AppSearch" />
731 <RemoveExistingProducts After="InstallValidate"><![CDATA[NEWERVERSIONDETECTED OR PREVIOUSVERSIONSINSTALLED]]></RemoveExistingProducts>
732
733 <Custom Action="ca_OriginalTargetDir" After="FileCost"><![CDATA[(NOT INSTALLDIR) AND (NOT EXISTINGINSTALLDIR)]]></Custom>
734 <Custom Action="ca_DefaultTargetDir" Before="FileCost" ><![CDATA[NOT Installed AND (NOT INSTALLDIR) AND EXISTINGINSTALLDIR]]></Custom>
735
736 <Custom Action="ca_UninstallTAPInstances" Before="InstallFiles" >1</Custom>
737<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
738 <Custom Action="ca_CreateHostOnlyInterfaceArgs" Before="ca_CreateHostOnlyInterface" ><![CDATA[&ft_VBoxNetworkAdp=3]]></Custom>
739 <Custom Action="ca_CreateHostOnlyInterface" Before="InstallFinalize" ><![CDATA[&ft_VBoxNetworkAdp=3]]></Custom>
740 <Custom Action="ca_RemoveHostOnlyInterfaces" After="ca_UninstallNetFlt" ></Custom>
741
742 <Custom Action="ca_RollbackInstallNetFltArgs" Before="ca_RollbackInstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=3]]></Custom>
743 <Custom Action="ca_RollbackInstallNetFlt" Before="ca_InstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=3]]></Custom>
744 <Custom Action="ca_InstallNetFltArgs" Before="ca_InstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=3]]></Custom>
745 <Custom Action="ca_InstallNetFlt" Before="ca_CreateHostOnlyInterface" ><![CDATA[&ft_VBoxNetworkFlt=3]]></Custom>
746
747 <Custom Action="ca_RollbackUninstallNetFltArgs" Before="ca_RollbackUninstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=2]]></Custom>
748 <Custom Action="ca_RollbackUninstallNetFlt" Before="ca_UninstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=2]]></Custom>
749 <Custom Action="ca_UninstallNetFltArgs" Before="ca_UninstallNetFlt" ><![CDATA[&ft_VBoxNetworkFlt=2]]></Custom>
750 <Custom Action="ca_UninstallNetFlt" After="InstallInitialize" ><![CDATA[&ft_VBoxNetworkFlt=2]]></Custom>
751<?endif?>
752 <Custom Action="ca_InstallPythonAPI" Before="InstallFinalize" ><![CDATA[&ft_VBoxPython=3]]></Custom>
753 <Custom Action="ca_InstallBranding" Before="InstallFinalize" ><![CDATA[NOT REMOVE]]></Custom>
754 <Custom Action="ca_UninstallBranding" Before="InstallFinalize" ><![CDATA[REMOVE]]></Custom>
755
756 </InstallExecuteSequence>
757
758 </Product>
759</Wix>
760
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette