VirtualBox.wxs revision 0d9b4a74081f0b630334190dfc5091b9d10bba5f
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?xml version='1.0' encoding='windows-1252'?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<!--
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana VirtualBox Windows Installation Script (WiX)
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Copyright (C) 2014 Oracle Corporation
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana This file is part of VirtualBox Open Source Edition (OSE), as
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana available from http://www.virtualbox.org. This file is free software;
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana you can redistribute it and/or modify it under the terms of the GNU
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana General Public License (GPL) as published by the Free Software
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Foundation, in version 2 as it comes in the "COPYING" file of the
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana VirtualBox OSE distribution. VirtualBox OSE is distributed in the
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana-->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include Properties.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- The merge module file names -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergeApp = "$(env.VBOX_WIN_INST_MERGE_APP)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergeCOM32On64 = "$(env.VBOX_WIN_INST_MERGE_COM32ON64)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergeUSB = "$(env.VBOX_WIN_INST_MERGE_USB)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergeNetworkFlt = "$(env.VBOX_WIN_INST_MERGE_NETFLT)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergeNetworkAdp = "$(env.VBOX_WIN_INST_MERGE_NETADP)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?define Property_VBoxMergePython = "$(env.VBOX_WIN_INST_MERGE_PYTHON)" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Product Id="*"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana UpgradeCode="C4BAD770-BFE8-4D2C-A592-693028A7215B"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Name="$(env.VBOX_PRODUCT) $(env.VBOX_VERSION_STRING)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Language="!(loc.LANG)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Codepage="1252"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Version="$(var.Property_Version)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Manufacturer="$(env.VBOX_VENDOR)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Package Id="*"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Keywords="Installer"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="$(env.VBOX_PRODUCT) $(var.Property_VersionExt) installation package"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Comments="$(env.VBOX_PRODUCT) installation package"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Compressed="yes"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Manufacturer="$(env.VBOX_VENDOR)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallerVersion="200"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallPrivileges="elevated"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Platform="$(var.Property_Platform)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Global properties -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="ARPPRODUCTICON">IconVirtualBox</Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="ARPURLINFOABOUT">http://www.virtualbox.org</Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="ARPURLUPDATEINFO">http://www.virtualbox.org</Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Install the product for all users on the system -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="ALLUSERS"><![CDATA[1]]></Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Force overwriting all files and re-create shortcuts to guarantee a working environment -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id='REINSTALLMODE' Value='amus'/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- VirtualBox properties -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="VBOX_INSTALLDESKTOPSHORTCUT" Value="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="VBOX_INSTALLQUICKLAUNCHSHORTCUT" Value="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="VBOX_REGISTERFILEEXTENSIONS" Value="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="VBOX_STARTVBOX" Value="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Make sure installation will not start on anything other but the NT family -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.Only64Bit)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana VersionNT64
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.Only32Bit)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana NOT VersionNT64
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.WrongOS)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana NOT VersionNT=500 AND NOT Version9X AND NOT VersionNT64
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.NeedAdmin)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Privileged
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Detect old innotek installation -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Force a manual uninstall of an already installed innotek VirtualBox version first -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="VBOXINNOTEK">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistrySearch Id="RegSearchInnotekVersion" Root="HKLM" Key="SOFTWARE\Innotek\VirtualBox" Name="Version" Type="raw" Win64="$(var.Property_Win64)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.InnotekFound)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana NOT VBOXINNOTEK
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- *************************** Upgrade packages only ******************************* -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Minimum and Maximum specify the range of versions we are supposed to update with this upgrade.
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana IncludeMaximum and IncludeMinimum specify whether the bound value is actually included in the range or not
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana (IncludeMaximum = yes meaning to find versions below or equal to the version specified in Maximum while
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana IncludeMaximum = no only finds those below the Maximum).
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana OnlyDetect tells the installer not to remove the previous product. This is useful as long as we
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana only change files in the package -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Upgrade Id="C4BAD770-BFE8-4D2C-A592-693028A7215B"> <!-- Upgrade of Sun xVM VirtualBox >= v1.6.0 -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Upgrade is flagged if current-install is newer than or equal to package - TODO: should make a dialog appear asking user to confirm downgrade -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Setting "OnlyDetect" to "no" makes the installer uninstall an already newer installed version -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <UpgradeVersion Property="NEWERVERSIONDETECTED" Minimum="$(var.Property_Version)" OnlyDetect="no" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Flag is set if the install will trigger an upgrade of an existing install -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <UpgradeVersion Property="PREVIOUSVERSIONSINSTALLED" Minimum="1.0.0.0" Maximum="$(var.Property_Version)" IncludeMaximum="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Upgrade>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- The product's icon table -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Icon Id="IconVirtualBox" SourceFile="$(env.VBOX_WINDOWS_ICON_FILE)" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- The media/binary IDs -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Media Id="1" Cabinet="product.cab" EmbedCab="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "no" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_COMBINED_PACKAGE) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Media Id="2" Cabinet="common.cab" EmbedCab="no" CompressionLevel="high" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Custom actions -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Figure out where a previous installation was, if any -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.BUILD_TARGET_ARCH) = "amd64" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_OriginalTargetDir" Execute="firstSequence" Property="INSTALLDIR"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Value="[ProgramFiles64Folder]\$(env.VBOX_VENDOR_SHORT)\VirtualBox" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="EXISTINGINSTALLDIR" Secure="yes">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistrySearch Id="RegistryGetInstallPath" Root="HKLM" Key="$(var.Property_RegKey)" Name="InstallDir"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Type="raw" Win64="$(var.Property_Win64)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_DefaultTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[EXISTINGINSTALLDIR]" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_OriginalTargetDir" Execute="firstSequence" Property="INSTALLDIR"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Value="[ProgramFilesFolder]\$(env.VBOX_VENDOR_SHORT)\VirtualBox" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Property Id="EXISTINGINSTALLDIR" Secure="yes">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistrySearch Id="RegistryGetInstallPath" Root="HKLM" Key="$(var.Property_RegKey)" Name="InstallDir"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Type="raw" Win64="$(var.Property_Win64)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_DefaultTargetDir" Execute="firstSequence" Property="INSTALLDIR" Value="[EXISTINGINSTALLDIR]" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_UninstallTAPInstances" BinaryKey="VBoxInstallHelper"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana DllEntry="UninstallTAPInstances" Execute="deferred" Return="check" Impersonate="no"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Detect old Sun installation -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Force a manual uninstall of an already installed Sun VirtualBox version first -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!--<Property Id="VBOXSUN">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistrySearch Id="RegSearchSunVersion" Root="HKLM" Key="SOFTWARE\Sun\VirtualBox" Name="Version" Type="raw" Win64="$(var.Property_Win64)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Property>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition Message="!(loc.SunFound)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana NOT VBOXSUN
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Condition>-->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_StartVBox" Directory="INSTALLDIR" ExeCommand="[INSTALLDIR]\VirtualBox.exe" Return="asyncNoWait" Impersonate="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_CheckSerial" BinaryKey="VBoxInstallHelper" DllEntry="CheckSerial" Impersonate="no"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_InstallBranding" BinaryKey="VBoxInstallHelper" DllEntry="InstallBranding" Execute="deferred" Return="check" Impersonate="no"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_InstallBrandingArgs" Property="ca_InstallBranding" Value="[INSTALLDIR]" Execute="immediate"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_UninstallBranding" BinaryKey="VBoxInstallHelper" DllEntry="UninstallBranding" Execute="deferred" Return="check" Impersonate="no"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CustomAction Id="ca_UninstallBrandingArgs" Property="ca_UninstallBranding" Value="[INSTALLDIR]" Execute="immediate"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "no" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeAppCA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeCOM32On64CA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetFltCA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetAdpCA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeUSBCA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergePythonCA.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="TARGETDIR" Name="SourceDir">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="$(var.Property_ProgramFiles)" Name="PFiles">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="INSTALLDIR" Name="$(env.VBOX_PRODUCT)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxApp" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergeApp)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxCOM32On64" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergeCOM32On64)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="msm_VBoxApplicationFolder" FileSource=".">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeApp.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeCOM32On64.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_Drivers" Name="drivers">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_USB" Name="USB">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxUSB" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergeUSB)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="msm_VBoxUSBFolder" FileSource=".">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeUSB.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_Network" Name="network">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_NetFlt" Name="netflt">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxNetworkFlt" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergeNetworkFlt)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="msm_VBoxNetworkFltFolder" FileSource=".">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetFlt.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_NetAdp" Name="netadp">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxNetworkAdp" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergeNetworkAdp)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="msm_VBoxNetworkAdpFolder" FileSource=".">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetAdp.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_SDK" Name="sdk">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_SDKInstall" Name="install">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Merge Id="msm_VBoxPython" Language="!(loc.LANG)" SourceFile="$(var.Property_VBoxMergePython)" DiskId="1" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="msm_VBoxPythonFolder" FileSource=".">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergePython.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Set up special directory IDs for referencing to the start menu
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana or the Quick Launch bar.
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana See: http://msdn.microsoft.com/en-us/library/aa368276.aspx
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana http://wix.mindcapers.com/wiki/Shortcuts_in_WiX -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="ProgramMenuFolder">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_StartMenuVBox" Name="$(env.VBOX_PRODUCT)"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="DesktopFolder" Name="Desktop"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="AppDataFolder" Name="AppData">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_AppDataMicrosoft" Name="Microsoft">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_AppDataMSIE" Name="Internet Explorer">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Directory Id="dir_QuicklaunchFolder" Name="Quick Launch"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Shortcut(s) in start menu -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Component Id="cp_StartMenuVBox" Guid="C2DC321A-CE63-40EE-8A98-724DF8BD12FB" Win64="$(var.Property_Win64)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Shortcut Id="sc_StartMenuVBox" Directory="dir_StartMenuVBox" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Type="string" Value="installed" KeyPath="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include $(env.PATH_TARGET)\Shortcuts_StartMenu.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Component>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Component Id="cp_DesktopShortcut" Guid="668F8A1A-F5CE-48B3-BB1A-3042EE27B279" Win64="$(var.Property_Win64)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition>VBOX_INSTALLDESKTOPSHORTCUT</Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Shortcut Id="sc_DesktopVBox" Directory="DesktopFolder" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)" Type="string"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Value="installed" KeyPath="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Component>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Component Id="cp_QuickLaunchVBox" Guid="CC19E026-938A-41CB-8E77-3F33296244B6" Win64="$(var.Property_Win64)">
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <CreateFolder/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Condition>VBOX_INSTALLQUICKLAUNCHSHORTCUT</Condition>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Shortcut Id="sc_QuickLaunchVBox" Directory="dir_QuicklaunchFolder" Name="$(env.VBOX_PRODUCT)" Description="$(env.VBOX_PRODUCT)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Target="[INSTALLDIR]VirtualBox.exe" WorkingDirectory="INSTALLDIR"/>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RegistryValue Root="HKCU" Key="$(var.Property_RegKeyInstall)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Type="string" Value="installed" KeyPath="yes" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Component>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Directory> <!-- TARGETDIR -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Note: Feature IDs *must not* be renamed to use any prefixes or such,
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana otherwise this will break manual selection using the ADDLOCAL= syntax
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana when using the command line / scripts (see VBox manual). -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxApplication" Title="VirtualBox Application" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_App)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="disallow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Components which are handled only by this installer itself -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_StartMenuVBox" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_DesktopShortcut" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_QuickLaunchVBox" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Components handled either by the installer itself or
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana the merge module -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxApp" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxCOM32On64" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_RegisterExtensions" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_DOCS_PACKING) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_Docs" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_NLS" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_MainCOM_x86" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_MainCOM" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_MainBinaries" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_QtAccessible" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxPyInst" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxPyMod" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_CROGL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxCROpenGL" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxSDLBinaries" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_WEBSERVICES) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxWebService" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxDrv" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxUSB" Title="VirtualBox USB Support" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_USBDriver)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="allow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxUSB" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_USBFilterDriver" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_USBDeviceDriver" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxNetwork" Title="VirtualBox Networking" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_Network)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="allow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxNetworkFlt" Title="VirtualBox Bridged Networking" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_NetFltDriver)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="allow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxNetworkFlt" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_NetFltDriver" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxNetworkAdp" Title="VirtualBox Host-Only Networking" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_NetAdpDriver)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="allow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxNetworkAdp" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_NetAdpDriver" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Feature Id="VBoxPython" Title="VirtualBox Python 2.x Support" Level="1"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Description="!(loc.VB_Python)"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Absent="allow" AllowAdvertise="no" >
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <MergeRef Id="msm_VBoxPython" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?else ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <ComponentRef Id="cp_VBoxPythonBinding" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Feature>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Include user interface definition -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include UserInterface.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <InstallExecuteSequence>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!--
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana To debug the action sequences, do: "msiexec /i <VBox.msi> /lar <Logfile>"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallUISequence (client side) is:
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana AppSearch
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana LaunchConditions
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ValidateProductID
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana CostInitialize
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana FileCost
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana CostFinalize
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana ExecuteAction -> will pass control over to "InstallExecuteSequence"
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana The first six actions above will be repeated but skipped on the server
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana side if already run on the client side.
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallExecuteSequence (server side) is:
1a5e258f5471356ca102c7176637cdce45bac147Josef 'Jeff' Sipek <First six action from InstallUISequence>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana .
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallInitialize
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana .
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana InstallFinalize
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana The actions between InstallInitialize and InstallFinalize will be gone through twice:
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana - The first time the installer creates an installation script containing all actions in the right
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana sequence which need to get executed in a batch later. At this point the launch conditions for
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana custom actions must be met already!
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana - The second time the generated installation script will be run as-is.
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana Also, the InstallUISequence and InstallExecuteSequence tables run in different sessions which
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana need public properties (that is, UPPERCASE properties).
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- AppSearch must be done before "RemoveExistingProducts" and before "FindRelatedProducts" -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <AppSearch Sequence="1"></AppSearch>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <LaunchConditions After="AppSearch" />
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- First install the new version and then remove the old version. This is more efficient -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <RemoveExistingProducts After="InstallValidate">PREVIOUSVERSIONSINSTALLED</RemoveExistingProducts>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_OriginalTargetDir" After="FileCost"><![CDATA[(NOT INSTALLDIR) AND (NOT EXISTINGINSTALLDIR)]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_DefaultTargetDir" Before="FileCost" ><![CDATA[NOT Installed AND (NOT INSTALLDIR) AND EXISTINGINSTALLDIR]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Check + unininstall old TAP instances - we don't need them anymore -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_UninstallTAPInstances" Before="InstallFiles" >1</Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_InstallBrandingArgs" Before="ca_InstallBranding" ><![CDATA[NOT REMOVE]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_InstallBranding" Before="InstallFinalize" ><![CDATA[NOT REMOVE]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <!-- Uninstall branding on complete uninstall, not on update -->
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_UninstallBrandingArgs" Before="ca_UninstallBranding" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <Custom Action="ca_UninstallBranding" Before="InstallFinalize" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?if $(env.VBOX_WITH_MSM_INSTALL) = "no" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeAppSeq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_32_ON_64_MAIN_API) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeCOM32On64Seq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetFltSeq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeNetAdpSeq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergeUSBSeq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?if $(env.VBOX_WITH_PYTHON) = "yes" ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?include VBoxMergePythonSeq.wxi ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana <?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana<?endif ?>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </InstallExecuteSequence>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana </Product>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana</Wix>
56b2bdd1f04d465cfe4a95b88ae5cba5884154e4Gireesh Nagabhushana