VBoxMergeNetFltCA.wxi revision 1147bd0ba1321d92a90514742709a20a244c255b
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<?xml version="1.0"?>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<!--
1147bd0ba1321d92a90514742709a20a244c255bvboxsync VirtualBox Windows Installation Script (WiX)
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync Copyright (C) 2006-2014 Oracle Corporation
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync This file is part of VirtualBox Open Source Edition (OSE), as
1147bd0ba1321d92a90514742709a20a244c255bvboxsync available from http://www.virtualbox.org. This file is free software;
1147bd0ba1321d92a90514742709a20a244c255bvboxsync you can redistribute it and/or modify it under the terms of the GNU
1147bd0ba1321d92a90514742709a20a244c255bvboxsync General Public License (GPL) as published by the Free Software
1147bd0ba1321d92a90514742709a20a244c255bvboxsync Foundation, in version 2 as it comes in the "COPYING" file of the
1147bd0ba1321d92a90514742709a20a244c255bvboxsync VirtualBox OSE distribution. VirtualBox OSE is distributed in the
1147bd0ba1321d92a90514742709a20a244c255bvboxsync hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
1147bd0ba1321d92a90514742709a20a244c255bvboxsync-->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<Include xmlns="http://schemas.microsoft.com/wix/2006/wi"
1147bd0ba1321d92a90514742709a20a244c255bvboxsync xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <!-- Custom actions -->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_CreateHostOnlyInterface" BinaryKey="VBoxInstallHelper" DllEntry="CreateHostOnlyInterface" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_CreateHostOnlyInterfaceArgs" Property="ca_CreateHostOnlyInterface" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_RemoveHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="RemoveHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_StopHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="StopHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_UpdateHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="UpdateHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_UpdateHostOnlyInterfacesArgs" Property="ca_UpdateHostOnlyInterfaces" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_InstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_InstallNetFltArgs" Property="ca_InstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_RollbackInstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="rollback" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_RollbackInstallNetFltArgs" Property="ca_RollbackInstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_UninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_UninstallNetFltArgs" Property="ca_UninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_RollbackUninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="rollback" Impersonate="no"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <CustomAction Id="ca_RollbackUninstallNetFltArgs" Property="ca_RollbackUninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<?endif ?>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <InstallExecuteSequence>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <!-- Create host-only interfaces on first-time install. -->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_CreateHostOnlyInterfaceArgs" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_CreateHostOnlyInterface" Before="InstallFinalize" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <!-- Don't remove the host-only interfaces on update, only on uninstall. -->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_RemoveHostOnlyInterfaces" After="ca_UninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <!-- First stop the existing host-only interfaces on update ... -->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_StopHostOnlyInterfaces" Before="ca_UpdateHostOnlyInterfaces" ><![CDATA[UPGRADINGPRODUCTCODE]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <!-- ... then do the actual driver update. -->
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_UpdateHostOnlyInterfacesArgs" Before="ca_UpdateHostOnlyInterfaces" ><![CDATA[Installed AND UPGRADINGPRODUCTCODE]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_UpdateHostOnlyInterfaces" Before="InstallFiles" ><![CDATA[Installed AND UPGRADINGPRODUCTCODE]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_RollbackInstallNetFltArgs" Before="ca_RollbackInstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_RollbackInstallNetFlt" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_InstallNetFltArgs" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_InstallNetFlt" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_RollbackUninstallNetFltArgs" Before="ca_RollbackUninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_RollbackUninstallNetFlt" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_UninstallNetFltArgs" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync <Custom Action="ca_UninstallNetFlt" After="InstallInitialize" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync<?endif?>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync </InstallExecuteSequence>
1147bd0ba1321d92a90514742709a20a244c255bvboxsync
1147bd0ba1321d92a90514742709a20a244c255bvboxsync</Include>