Don't use COBJMACROS on internal interfaces.

diff --git a/dlls/dplayx/dplaysp.h b/dlls/dplayx/dplaysp.h
index 1af02be..05995dc 100644
--- a/dlls/dplayx/dplaysp.h
+++ b/dlls/dplayx/dplaysp.h
@@ -78,7 +78,7 @@
 /* NOTE: The microsoft provided header file doesn't have these access
  * functions
  */
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
 /*** IUnknown methods ***/
 #define IDirectPlaySP_QueryInterface(p,a,b)        (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDirectPlaySP_AddRef(p)                    (p)->lpVtbl->AddRef(p)
diff --git a/dlls/dplayx/lobbysp.h b/dlls/dplayx/lobbysp.h
index cd93887..669671a 100644
--- a/dlls/dplayx/lobbysp.h
+++ b/dlls/dplayx/lobbysp.h
@@ -483,7 +483,7 @@
 DECLARE_INTERFACE_(IDPLobbySP,IUnknown) { IDPLobbySP_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
 /*** IUnknown methods ***/
 #define IDPLobbySP_QueryInterface(p,a,b)         (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDPLobbySP_AddRef(p)                     (p)->lpVtbl->AddRef(p)
diff --git a/include/dsdriver.h b/include/dsdriver.h
index 34f8679..8ff3c4f 100644
--- a/include/dsdriver.h
+++ b/include/dsdriver.h
@@ -144,7 +144,7 @@
 DECLARE_INTERFACE_(IDsDriver,IUnknown) { IDsDriver_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsDriver_QueryInterface(p,a,b)         (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsDriver_AddRef(p)                     (p)->lpVtbl->AddRef(p)
@@ -176,7 +176,7 @@
 DECLARE_INTERFACE_(IDsDriverBuffer,IUnknown) { IDsDriverBuffer_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsDriverBuffer_QueryInterface(p,a,b)   (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsDriverBuffer_AddRef(p)               (p)->lpVtbl->AddRef(p)
@@ -205,7 +205,7 @@
 DECLARE_INTERFACE_(IDsDriverPropertySet,IUnknown) { IDsDriverPropertySet_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsDriverPropertySet_QueryInterface(p,a,b)      (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsDriverPropertySet_AddRef(p)                  (p)->lpVtbl->AddRef(p)
@@ -261,7 +261,7 @@
 DECLARE_INTERFACE_(IDsDriverNotify,IUnknown) { IDsDriverNotify_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsDriverNotify_QueryInterface(p,a,b)           (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsDriverNotify_AddRef(p)                       (p)->lpVtbl->AddRef(p)
@@ -284,7 +284,7 @@
 DECLARE_INTERFACE_(IDsCaptureDriver,IUnknown) { IDsCaptureDriver_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsCaptureDriver_QueryInterface(p,a,b)          (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsCaptureDriver_AddRef(p)                      (p)->lpVtbl->AddRef(p)
@@ -313,7 +313,7 @@
 DECLARE_INTERFACE_(IDsCaptureDriverBuffer,IUnknown) { IDsCaptureDriverBuffer_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
     /*** IUnknown methods ***/
 #define IDsCaptureDriverBuffer_QueryInterface(p,a,b)    (p)->lpVtbl->QueryInterface(p,a,b)
 #define IDsCaptureDriverBuffer_AddRef(p)                (p)->lpVtbl->AddRef(p)
diff --git a/include/wine/wined3d_interface.h b/include/wine/wined3d_interface.h
index 2cbbc05..156fbea 100644
--- a/include/wine/wined3d_interface.h
+++ b/include/wine/wined3d_interface.h
@@ -74,7 +74,7 @@
 DECLARE_INTERFACE_(IWineD3D,IUnknown) { IWineD3D_METHODS };
 #undef INTERFACE
 
-#ifdef COBJMACROS
+#if !defined(__cplusplus) || defined(CINTERFACE)
 /*** IUnknown methods ***/
 #define IWineD3D_QueryInterface(p,a,b)                    (p)->lpVtbl->QueryInterface(p,a,b)
 #define IWineD3D_AddRef(p)                                (p)->lpVtbl->AddRef(p)