VirtualBox

Changeset 51050 in vbox for trunk/src/VBox/Installer/win


Ignore:
Timestamp:
Apr 11, 2014 2:55:45 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
93272
Message:

Windows host installer: Bugfixes.

Location:
trunk/src/VBox/Installer/win
Files:
9 edited
2 copied

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Installer/win/InstallHelper/VBoxInstallHelper.cpp

    r51009 r51050  
    493493#define VBOX_NETCFG_APP_NAME L"VirtualBox Installer"
    494494#define VBOX_NETCFG_MAX_RETRIES 10
    495 #define NETFLT_PT_INF_REL_PATH L"drivers\\network\\netflt\\VBoxNetFlt.inf"
    496 #define NETFLT_MP_INF_REL_PATH L"drivers\\network\\netflt\\VBoxNetFltM.inf"
     495#define NETFLT_PT_INF_REL_PATH L"VBoxNetFlt.inf"
     496#define NETFLT_MP_INF_REL_PATH L"VBoxNetFltM.inf"
    497497#define NETFLT_ID  L"sun_VBoxNetFlt" /** @todo Needs to be changed (?). */
    498498#define NETADP_ID  L"sun_VBoxNetAdp" /** @todo Needs to be changed (?). */
     
    538538        case NETCFG_S_REBOOT:
    539539        {
    540             logStringW(hModule, L"Reboot required, setting REBOOT property to Force");
     540            logStringW(hModule, L"Reboot required, setting REBOOT property to \"force\"");
    541541            HRESULT hr2 = MsiSetPropertyW(hModule, L"REBOOT", L"Force");
    542542            if (hr2 != ERROR_SUCCESS)
     
    855855    GUID guid;
    856856    WCHAR wszMpInf[MAX_PATH];
    857     DWORD cchMpInf = RT_ELEMENTS(wszMpInf) - sizeof("drivers\\network\\netadp\\VBoxNetAdp.inf") - 1;
     857    DWORD cchMpInf = RT_ELEMENTS(wszMpInf) - sizeof("VBoxNetAdp.inf") - 1;
    858858    LPCWSTR pwszInfPath = NULL;
    859859    bool bIsFile = false;
     
    870870            }
    871871
    872             wcscat(wszMpInf, L"drivers\\network\\netadp\\VBoxNetAdp.inf");
     872            wcscat(wszMpInf, L"VBoxNetAdp.inf");
    873873            pwszInfPath = wszMpInf;
    874874            bIsFile = true;
     
    877877        }
    878878        else
    879             logStringW(hModule, L"CreateHostOnlyInterface: NetAdpDir property value is empty");
     879            logStringW(hModule, L"CreateHostOnlyInterface: VBox installation path is empty");
    880880    }
    881881    else
    882         logStringW(hModule, L"CreateHostOnlyInterface: Failed to get NetAdpDir property, error = 0x%x", uErr);
     882        logStringW(hModule, L"CreateHostOnlyInterface: Unable to retrieve VBox installation path, error = 0x%x", uErr);
    883883
    884884    /* Make sure the inf file is installed. */
     
    943943        if (FAILED(hr))
    944944        {
    945             logStringW(hModule, L"RemoveHostOnlyInterfaces: NetAdp uninstalled successfully, but failed to remove infs");
     945            logStringW(hModule, L"RemoveHostOnlyInterfaces: NetAdp uninstalled successfully, but failed to remove INF files");
    946946        }
    947947    }
     
    10001000
    10011001    WCHAR wszMpInf[MAX_PATH];
    1002     DWORD cchMpInf = RT_ELEMENTS(wszMpInf) - sizeof("drivers\\network\\netadp\\VBoxNetAdp.inf") - 1;
     1002    DWORD cchMpInf = RT_ELEMENTS(wszMpInf) - sizeof("VBoxNetAdp.inf") - 1;
    10031003    LPCWSTR pwszInfPath = NULL;
    10041004    bool bIsFile = false;
     
    10151015            }
    10161016
    1017             wcscat(wszMpInf, L"drivers\\network\\netadp\\VBoxNetAdp.inf");
     1017            wcscat(wszMpInf, L"VBoxNetAdp.inf");
    10181018            pwszInfPath = wszMpInf;
    10191019            bIsFile = true;
     
    10501050        }
    10511051        else
    1052             logStringW(hModule, L"UpdateHostOnlyInterfaces: NetAdpDir property value is empty");
     1052            logStringW(hModule, L"UpdateHostOnlyInterfaces: VBox installation path is empty");
    10531053    }
    10541054    else
    1055         logStringW(hModule, L"UpdateHostOnlyInterfaces: Failed to get NetAdpDir property, error = 0x%x", uErr);
     1055        logStringW(hModule, L"UpdateHostOnlyInterfaces: Unable to retrieve VBox installation path, error = 0x%x", uErr);
    10561056
    10571057    /* Restore original setup mode. */
  • trunk/src/VBox/Installer/win/VBoxMergeNetAdp.wxs

    r51023 r51050  
    4343        </Directory> <!-- TARGETDIR -->
    4444
     45        <!-- Custom actions -->
     46        <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
     47        <Property Id="VBOX_FEATURE_NETADP" Value="1" />
     48        <?include VBoxMergeNetAdpCA.wxi ?>
     49
     50        <InstallExecuteSequence>
     51            <?include VBoxMergeNetAdpSeq.wxi ?>
     52        </InstallExecuteSequence>
     53
    4554    </Module>
    4655</Wix>
  • trunk/src/VBox/Installer/win/VBoxMergeNetAdpCA.wxi

    r51043 r51050  
    1717         xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
    1818
    19 <?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
    2019    <CustomAction Id="ca_CreateHostOnlyInterface" BinaryKey="VBoxInstallHelper" DllEntry="CreateHostOnlyInterface" Execute="deferred" Return="check" Impersonate="no"/>
    21     <CustomAction Id="ca_CreateHostOnlyInterfaceArgs" Property="ca_CreateHostOnlyInterface" Value="[INSTALLDIR]" Execute="immediate"/>
    22 
     20    <CustomAction Id="ca_CreateHostOnlyInterfaceArgs" Property="ca_CreateHostOnlyInterface" Value="[MergeRedirectFolder]" Execute="immediate"/>
    2321    <CustomAction Id="ca_RemoveHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="RemoveHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    2422    <CustomAction Id="ca_StopHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="StopHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    25 
    2623    <CustomAction Id="ca_UpdateHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="UpdateHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    27     <CustomAction Id="ca_UpdateHostOnlyInterfacesArgs" Property="ca_UpdateHostOnlyInterfaces" Value="[INSTALLDIR]" Execute="immediate"/>
    28 
    29     <CustomAction Id="ca_InstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
    30     <CustomAction Id="ca_InstallNetFltArgs" Property="ca_InstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
    31 
    32     <CustomAction Id="ca_RollbackInstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="rollback" Impersonate="no"/>
    33     <CustomAction Id="ca_RollbackInstallNetFltArgs" Property="ca_RollbackInstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
    34 
    35     <CustomAction Id="ca_UninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
    36     <CustomAction Id="ca_UninstallNetFltArgs" Property="ca_UninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
    37 
    38     <CustomAction Id="ca_RollbackUninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="rollback" Impersonate="no"/>
    39     <CustomAction Id="ca_RollbackUninstallNetFltArgs" Property="ca_RollbackUninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
    40 <?endif ?>
     24    <CustomAction Id="ca_UpdateHostOnlyInterfacesArgs" Property="ca_UpdateHostOnlyInterfaces" Value="[MergeRedirectFolder]" Execute="immediate"/>
    4125
    4226</Include>
  • trunk/src/VBox/Installer/win/VBoxMergeNetAdpSeq.wxi

    r51043 r51050  
    1717         xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
    1818
    19 <?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
    20     <!-- Create host-only interfaces on first-time install. -->
    21     <Custom Action="ca_CreateHostOnlyInterfaceArgs" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
    22     <Custom Action="ca_CreateHostOnlyInterface" Before="InstallFinalize" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
    23     <!-- Don't remove the host-only interfaces on update, only on uninstall. -->
    24     <Custom Action="ca_RemoveHostOnlyInterfaces" After="ca_UninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
     19    <!-- Create host-only interfaces on first-time install -->
     20    <Custom Action="ca_CreateHostOnlyInterfaceArgs" Before="ca_CreateHostOnlyInterface" ><![CDATA[NOT Installed]]></Custom>
     21    <Custom Action="ca_CreateHostOnlyInterface" Before="InstallFinalize" ><![CDATA[NOT Installed]]></Custom>
     22    <!-- Don't remove the host-only interfaces on update, only on uninstall -->
     23    <Custom Action="ca_RemoveHostOnlyInterfaces" Before="RemoveFiles" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
    2524    <!-- First stop the existing host-only interfaces on update ... -->
    2625    <Custom Action="ca_StopHostOnlyInterfaces" Before="ca_UpdateHostOnlyInterfaces" ><![CDATA[UPGRADINGPRODUCTCODE]]></Custom>
     
    2928    <Custom Action="ca_UpdateHostOnlyInterfaces" Before="InstallFiles" ><![CDATA[Installed AND UPGRADINGPRODUCTCODE]]></Custom>
    3029
    31     <Custom Action="ca_RollbackInstallNetFltArgs" Before="ca_RollbackInstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    32     <Custom Action="ca_RollbackInstallNetFlt" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    33     <Custom Action="ca_InstallNetFltArgs" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    34     <Custom Action="ca_InstallNetFlt" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    35 
    36     <Custom Action="ca_RollbackUninstallNetFltArgs" Before="ca_RollbackUninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    37     <Custom Action="ca_RollbackUninstallNetFlt" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    38     <Custom Action="ca_UninstallNetFltArgs" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    39     <Custom Action="ca_UninstallNetFlt" After="InstallInitialize" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    40 <?endif?>
    41 
    4230</Include>
  • trunk/src/VBox/Installer/win/VBoxMergeNetFlt.wxs

    r51043 r51050  
    4545        <!-- Custom actions -->
    4646        <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
     47        <Property Id="VBOX_FEATURE_NETFLT" Value="1" />
    4748        <?include VBoxMergeNetFltCA.wxi ?>
    4849
  • trunk/src/VBox/Installer/win/VBoxMergeNetFltCA.wxi

    r51043 r51050  
    1818
    1919<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
    20     <CustomAction Id="ca_CreateHostOnlyInterface" BinaryKey="VBoxInstallHelper" DllEntry="CreateHostOnlyInterface" Execute="deferred" Return="check" Impersonate="no"/>
    21     <CustomAction Id="ca_CreateHostOnlyInterfaceArgs" Property="ca_CreateHostOnlyInterface" Value="[INSTALLDIR]" Execute="immediate"/>
    22 
    23     <CustomAction Id="ca_RemoveHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="RemoveHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    24     <CustomAction Id="ca_StopHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="StopHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    25 
    26     <CustomAction Id="ca_UpdateHostOnlyInterfaces" BinaryKey="VBoxInstallHelper" DllEntry="UpdateHostOnlyInterfaces" Execute="deferred" Return="check" Impersonate="no"/>
    27     <CustomAction Id="ca_UpdateHostOnlyInterfacesArgs" Property="ca_UpdateHostOnlyInterfaces" Value="[INSTALLDIR]" Execute="immediate"/>
    28 
    2920    <CustomAction Id="ca_InstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
    30     <CustomAction Id="ca_InstallNetFltArgs" Property="ca_InstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
     21    <CustomAction Id="ca_InstallNetFltArgs" Property="ca_InstallNetFlt" Value="[MergeRedirectFolder]" Execute="immediate"/>
    3122
    3223    <CustomAction Id="ca_RollbackInstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="rollback" Impersonate="no"/>
    33     <CustomAction Id="ca_RollbackInstallNetFltArgs" Property="ca_RollbackInstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
     24    <CustomAction Id="ca_RollbackInstallNetFltArgs" Property="ca_RollbackInstallNetFlt" Value="[MergeRedirectFolder]" Execute="immediate"/>
    3425
    3526    <CustomAction Id="ca_UninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="UninstallNetFlt" Execute="deferred" Return="check" Impersonate="no"/>
    36     <CustomAction Id="ca_UninstallNetFltArgs" Property="ca_UninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
     27    <CustomAction Id="ca_UninstallNetFltArgs" Property="ca_UninstallNetFlt" Value="[MergeRedirectFolder]" Execute="immediate"/>
    3728
    3829    <CustomAction Id="ca_RollbackUninstallNetFlt" BinaryKey="VBoxInstallHelper" DllEntry="InstallNetFlt" Execute="rollback" Impersonate="no"/>
    39     <CustomAction Id="ca_RollbackUninstallNetFltArgs" Property="ca_RollbackUninstallNetFlt" Value="[INSTALLDIR]" Execute="immediate"/>
     30    <CustomAction Id="ca_RollbackUninstallNetFltArgs" Property="ca_RollbackUninstallNetFlt" Value="[MergeRedirectFolder]" Execute="immediate"/>
    4031<?endif ?>
    4132
  • trunk/src/VBox/Installer/win/VBoxMergeNetFltSeq.wxi

    r51043 r51050  
    1818
    1919<?if $(env.VBOX_WITH_NETFLT) = "yes" ?>
    20     <!-- Create host-only interfaces on first-time install. -->
    21     <Custom Action="ca_CreateHostOnlyInterfaceArgs" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
    22     <Custom Action="ca_CreateHostOnlyInterface" Before="InstallFinalize" ><![CDATA[&VBoxNetworkAdp=3]]></Custom>
    23     <!-- Don't remove the host-only interfaces on update, only on uninstall. -->
    24     <Custom Action="ca_RemoveHostOnlyInterfaces" After="ca_UninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
    25     <!-- First stop the existing host-only interfaces on update ... -->
    26     <Custom Action="ca_StopHostOnlyInterfaces" Before="ca_UpdateHostOnlyInterfaces" ><![CDATA[UPGRADINGPRODUCTCODE]]></Custom>
    27     <!-- ... then do the actual driver update. -->
    28     <Custom Action="ca_UpdateHostOnlyInterfacesArgs" Before="ca_UpdateHostOnlyInterfaces" ><![CDATA[Installed AND UPGRADINGPRODUCTCODE]]></Custom>
    29     <Custom Action="ca_UpdateHostOnlyInterfaces" Before="InstallFiles" ><![CDATA[Installed AND UPGRADINGPRODUCTCODE]]></Custom>
     20    <Custom Action="ca_RollbackInstallNetFltArgs" Before="ca_RollbackInstallNetFlt" ><![CDATA[UPGRADINGPRODUCTCODE OR (NOT Installed)]]></Custom>
     21    <Custom Action="ca_RollbackInstallNetFlt" Before="ca_InstallNetFlt" ><![CDATA[UPGRADINGPRODUCTCODE OR (NOT Installed)]]></Custom>
     22    <Custom Action="ca_InstallNetFltArgs" Before="ca_InstallNetFlt" ><![CDATA[UPGRADINGPRODUCTCODE OR (NOT Installed)]]></Custom>
     23    <Custom Action="ca_InstallNetFlt" Before="InstallFinalize" ><![CDATA[UPGRADINGPRODUCTCODE OR (NOT Installed)]]></Custom>
    3024
    31     <Custom Action="ca_RollbackInstallNetFltArgs" Before="ca_RollbackInstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    32     <Custom Action="ca_RollbackInstallNetFlt" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    33     <Custom Action="ca_InstallNetFltArgs" Before="ca_InstallNetFlt" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    34     <Custom Action="ca_InstallNetFlt" Before="ca_CreateHostOnlyInterface" ><![CDATA[&VBoxNetworkFlt=3]]></Custom>
    35 
    36     <Custom Action="ca_RollbackUninstallNetFltArgs" Before="ca_RollbackUninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    37     <Custom Action="ca_RollbackUninstallNetFlt" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    38     <Custom Action="ca_UninstallNetFltArgs" Before="ca_UninstallNetFlt" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
    39     <Custom Action="ca_UninstallNetFlt" After="InstallInitialize" ><![CDATA[&VBoxNetworkFlt=2]]></Custom>
     25    <Custom Action="ca_RollbackUninstallNetFltArgs" Before="ca_RollbackUninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
     26    <Custom Action="ca_RollbackUninstallNetFlt" Before="ca_UninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
     27    <Custom Action="ca_UninstallNetFltArgs" Before="ca_UninstallNetFlt" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
     28    <Custom Action="ca_UninstallNetFlt" After="InstallInitialize" ><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")]]></Custom>
    4029<?endif?>
    4130
  • trunk/src/VBox/Installer/win/VBoxMergePython.wxs

    r51043 r51050  
    4545        <!-- Custom actions -->
    4646        <Binary Id="VBoxInstallHelper" SourceFile="$(env.PATH_OUT)\bin\VBoxInstallHelper.dll" />
     47        <Property Id="VBOX_FEATURE_PYTHON" Value="1" />
    4748        <?include VBoxMergePythonCA.wxi ?>
    4849
  • trunk/src/VBox/Installer/win/VBoxMergePythonCA.wxi

    r51043 r51050  
    1818
    1919    <CustomAction Id="ca_InstallPythonAPI" BinaryKey="VBoxInstallHelper" DllEntry="InstallPythonAPI" Execute="deferred" Return="check" Impersonate="no"/>
    20     <CustomAction Id="ca_InstallPythonAPIArgs" Property="ca_InstallPythonAPI" Value="[INSTALLDIR]" Execute="immediate"/>
     20    <CustomAction Id="ca_InstallPythonAPIArgs" Property="ca_InstallPythonAPI" Value="[MergeRedirectFolder]" Execute="immediate"/>
    2121
    2222</Include>
  • trunk/src/VBox/Installer/win/VBoxMergePythonSeq.wxi

    r51043 r51050  
    1717         xmlns:difxapp="http://schemas.microsoft.com/wix/DifxAppExtension">
    1818
    19     <Custom Action="ca_InstallPythonAPIArgs" Before="ca_InstallPythonAPI" ><![CDATA[&VBoxPython=3]]></Custom>
    20     <Custom Action="ca_InstallPythonAPI" Before="InstallFinalize" ><![CDATA[&VBoxPython=3]]></Custom>
     19    <Custom Action="ca_InstallPythonAPIArgs" Before="ca_InstallPythonAPI" ><![CDATA[1]]></Custom>
     20    <Custom Action="ca_InstallPythonAPI" Before="InstallFinalize" ><![CDATA[1]]></Custom>
    2121
    2222</Include>
  • trunk/src/VBox/Installer/win/VirtualBox.wxs

    r51046 r51050  
    6565
    6666    <!-- VirtualBox properties -->
    67     <Property Id="VBOX_INSTALLDESKTOPSHORTCUT" Value="1"></Property>
    68     <Property Id="VBOX_INSTALLQUICKLAUNCHSHORTCUT" Value="1"></Property>
    69     <Property Id="VBOX_REGISTERFILEEXTENSIONS" Value="1"></Property>
    70     <Property Id="VBOX_STARTVBOX" Value="1"></Property>
     67    <Property Id="VBOX_INSTALLDESKTOPSHORTCUT" Value="1" />
     68    <Property Id="VBOX_INSTALLQUICKLAUNCHSHORTCUT" Value="1" />
     69    <Property Id="VBOX_REGISTERFILEEXTENSIONS" Value="1" />
     70    <Property Id="VBOX_STARTVBOX" Value="1" />
    7171
    7272    <!-- Make sure installation will not start on anything other but the NT family -->
     
    279279             ConfigurableDirectory="INSTALLDIR" TypicalDefault="install" Display="expand"
    280280             Absent="disallow" AllowAdvertise="no" >
    281 <?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
    282         <MergeRef Id="msm_VBoxApp" />
    283 <?else ?>
     281        <!-- Components which are handled only by this installer itself -->
    284282        <ComponentRef Id="cp_StartMenuVBox" />
    285283        <ComponentRef Id="cp_DesktopShortcut" />
    286284        <ComponentRef Id="cp_QuickLaunchVBox" />
     285        <!-- Components handled either by the installer itself or
     286             the merge module -->
     287<?if $(env.VBOX_WITH_MSM_INSTALL) = "yes" ?>
     288        <MergeRef Id="msm_VBoxApp" />
     289<?else ?>
    287290    <?if $(env.VBOX_WITH_QTGUI) = "yes" ?>
    288291        <ComponentRef Id="cp_RegisterExtensions" />
     
    410413        <!-- AppSearch must be done before "RemoveExistingProducts" and before "FindRelatedProducts" -->
    411414        <AppSearch Sequence="1"></AppSearch>
    412         <LaunchConditions Sequence="2" />
     415        <LaunchConditions After="AppSearch" />
    413416
    414417        <!-- First install the new version and then remove the old version. This is more efficient -->
    415         <RemoveExistingProducts Sequence="3" />
    416         <InstallValidate Sequence="4" />
     418        <RemoveExistingProducts Before="InstallValidate" />
    417419
    418420        <Custom Action="ca_OriginalTargetDir" After="FileCost"><![CDATA[(NOT INSTALLDIR) AND (NOT EXISTINGINSTALLDIR)]]></Custom>
Note: See TracChangeset for help on using the changeset viewer.

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