Index: /trunk/src/VBox/Main/Makefile.kmk
===================================================================
--- /trunk/src/VBox/Main/Makefile.kmk	(revision 76083)
+++ /trunk/src/VBox/Main/Makefile.kmk	(revision 76084)
@@ -303,5 +303,5 @@
 VBoxSDS_TEMPLATE = VBOXMAINEXE
 VBoxSDS_DEFS += VBOX_COM_OUTOFPROC_MODULE
- if "$(KBUILD_TYPE)" == "debug" && "$(USERNAME)" == "bird"
+ ifneq ($(KBUILD_TYPE),release)
 VBoxSDS_DEFS += _WIN32_WINNT=0x0610 # ClientPID query requires vista+
  else
@@ -380,5 +380,5 @@
 endif
 VBoxSVC_DEFS.win += VBOX_COM_OUTOFPROC_MODULE
- if "$(KBUILD_TYPE)" == "debug" && "$(USERNAME)" == "bird"
+ ifneq ($(KBUILD_TYPE),release)
 VBoxSVC_DEFS.win += _WIN32_WINNT=0x0610 # ClientPID query requires vista+
  else
Index: /trunk/src/VBox/Main/idl/VirtualBox.dtd
===================================================================
--- /trunk/src/VBox/Main/idl/VirtualBox.dtd	(revision 76083)
+++ /trunk/src/VBox/Main/idl/VirtualBox.dtd	(revision 76084)
@@ -75,4 +75,5 @@
     <!ATTLIST interface wrap-hint-server-addinterfaces CDATA #IMPLIED>
     <!ATTLIST interface wrap-hint-server CDATA #IMPLIED>
+    <!ATTLIST interface wrap-gen-hook (yes|no) "no">
     <!-- DTrace has a probe name length limit, so dtracename helps dealing with excessivly long names. -->
     <!ATTLIST interface dtracename CDATA #IMPLIED>
Index: /trunk/src/VBox/Main/idl/VirtualBox.xidl
===================================================================
--- /trunk/src/VBox/Main/idl/VirtualBox.xidl	(revision 76083)
+++ /trunk/src/VBox/Main/idl/VirtualBox.xidl	(revision 76084)
@@ -2010,4 +2010,5 @@
     wsmap="managed"
     reservedMethods="8" reservedAttributes="12"
+    wrap-gen-hook="yes"
     >
     <desc>
Index: /trunk/src/VBox/Main/idl/apiwrap-server.xsl
===================================================================
--- /trunk/src/VBox/Main/idl/apiwrap-server.xsl	(revision 76083)
+++ /trunk/src/VBox/Main/idl/apiwrap-server.xsl	(revision 76084)
@@ -1221,4 +1221,11 @@
     <xsl:text>));
 
+</xsl:text>
+    <xsl:if test="@wrap-gen-hook='yes'">
+        <xsl:text>
+    callHook();
+        <xsl:text>
+    </xsl:if>
+<xsl:text>
     VirtualBoxBase::clearError();
 
