Index: /trunk/src/VBox/Installer/win/Stub/Makefile.kmk
===================================================================
--- /trunk/src/VBox/Installer/win/Stub/Makefile.kmk	(revision 37986)
+++ /trunk/src/VBox/Installer/win/Stub/Makefile.kmk	(revision 37987)
@@ -43,6 +43,10 @@
 # The icon location is configurable.
 VBoxStub.rc_INCS += $(VBoxStub_0_OUTDIR)
-VBoxStub.rc_DEPS += $(VBoxStub_0_OUTDIR)/VBoxStub-icon.rc
-VBoxStub.rc_CLEAN = $(VBoxStub_0_OUTDIR)/VBoxStub-icon.rc
+VBoxStub.rc_DEPS += \
+	$(VBoxStub_0_OUTDIR)/VBoxStub-icon.rc \
+	$(VBoxStub_0_OUTDIR)/VBoxStub-manifest.rc
+VBoxStub.rc_CLEAN = \
+	$(VBoxStub_0_OUTDIR)/VBoxStub-icon.rc \
+	$(VBoxStub_0_OUTDIR)/VBoxStub-manifest.rc
 
 # Icon include file.
@@ -50,4 +54,9 @@
 	$(APPEND) -t $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
 
+# Manifest.
+VBOX_STUB_MANIFEST_FILE := $(PATH_SUB_CURRENT)/VBoxStub.manifest
+$$(VBoxStub_0_OUTDIR)/VBoxStub-manifest.rc: $(VBOX_STUB_MANIFEST_FILE) $(MAKEFILE_CURRENT) | $$(dir $$@)
+	$(APPEND) -t $@ 'APP_MANIFEST RT_MANIFEST "$(subst /,\\,$(VBOX_STUB_MANIFEST_FILE))"'
+
 endif # x86 only
 
Index: /trunk/src/VBox/Installer/win/Stub/VBoxStub.cpp
===================================================================
--- /trunk/src/VBox/Installer/win/Stub/VBoxStub.cpp	(revision 37986)
+++ /trunk/src/VBox/Installer/win/Stub/VBoxStub.cpp	(revision 37987)
@@ -20,4 +20,5 @@
 *******************************************************************************/
 #include <windows.h>
+#include <commctrl.h>
 #include <lmerr.h>
 #include <msiquery.h>
@@ -568,4 +569,11 @@
                             AssertMsgBreak(uLogLevel == ERROR_SUCCESS, ("Could not set installer logging level!\n"));
                         }
+
+                        /* Initialize the common controls (extended version). This is necessary to
+                         * run the actual .MSI installers with the new fancy visual control
+                         * styles (XP+). Also, an integrated manifest is required. */
+                        INITCOMMONCONTROLSEX ccEx;
+                        ccEx.dwSize = sizeof(INITCOMMONCONTROLSEX);
+                        InitCommonControlsEx(&ccEx); /* Ignore failure. */
 
                         UINT uStatus = ::MsiInstallProductA(pszTempFile, szMSIArgs);
Index: /trunk/src/VBox/Installer/win/Stub/VBoxStub.manifest
===================================================================
--- /trunk/src/VBox/Installer/win/Stub/VBoxStub.manifest	(revision 37987)
+++ /trunk/src/VBox/Installer/win/Stub/VBoxStub.manifest	(revision 37987)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+<assemblyIdentity
+    version="1.0.0.0"
+    processorArchitecture="*"
+    name="VBoxStub.exe"
+    type="win32"
+/>
+<description>VirtualBox Windows Installer</description>
+<dependency>
+    <dependentAssembly>
+        <assemblyIdentity
+            type="win32"
+            name="Microsoft.Windows.Common-Controls"
+            version="6.0.0.0"
+            processorArchitecture="*"
+            publicKeyToken="6595b64144ccf1df"
+            language="*"
+        />
+    </dependentAssembly>
+</dependency>
+</assembly>
Index: /trunk/src/VBox/Installer/win/Stub/VBoxStub.rc
===================================================================
--- /trunk/src/VBox/Installer/win/Stub/VBoxStub.rc	(revision 37986)
+++ /trunk/src/VBox/Installer/win/Stub/VBoxStub.rc	(revision 37987)
@@ -5,5 +5,5 @@
 
 /*
- * Copyright (C) 2009-2010 Oracle Corporation
+ * Copyright (C) 2009-2011 Oracle Corporation
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -52,3 +52,4 @@
 
 #include "VBoxStub-icon.rc"
+#include "VBoxStub-manifest.rc"
 
Index: /trunk/src/VBox/Installer/win/Stub/resource.h
===================================================================
--- /trunk/src/VBox/Installer/win/Stub/resource.h	(revision 37986)
+++ /trunk/src/VBox/Installer/win/Stub/resource.h	(revision 37987)
@@ -15,4 +15,7 @@
  * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
  */
+#define IDI_VIRTUALBOX 101
 
-#define IDI_VIRTUALBOX 101
+#define RT_MANIFEST 24
+#define APP_MANIFEST 1
+
