Import and merge Wine-20041201
Added: trunk/reactos/lib/oleaut32/
Added: trunk/reactos/lib/oleaut32/Makefile.ros-template
Added: trunk/reactos/lib/oleaut32/cursoricon.h
Added: trunk/reactos/lib/oleaut32/makefile
Modified: trunk/reactos/lib/oleaut32/oaidl_p.c
Modified: trunk/reactos/lib/oleaut32/variant.c
Modified: trunk/reactos/lib/oleaut32/variant.h

Copied: trunk/reactos/lib/oleaut32 (from rev 12578, vendor/wine/dlls/oleaut32/current)

Added: trunk/reactos/lib/oleaut32/Makefile.ros-template
--- vendor/wine/dlls/oleaut32/current/Makefile.ros-template	2004-12-31 15:27:32 UTC (rev 12578)
+++ trunk/reactos/lib/oleaut32/Makefile.ros-template	2004-12-31 15:28:42 UTC (rev 12579)
@@ -0,0 +1,21 @@
+# $Id: Makefile.ros-template 12052 2004-12-12 18:01:23Z navaraf $
+
+TARGET_NAME = oleaut32
+
+TARGET_OBJECTS = @C_SRCS@
+
+TARGET_CFLAGS = @EXTRADEFS@ -D__REACTOS__
+
+TARGET_SDKLIBS = @IMPORTS@ winmm.a wine.a wine_uuid.a wine_unicode.a ntdll.a
+
+TARGET_BASE = $(TARGET_BASE_LIB_OLEAUT32)
+
+TARGET_RC_SRCS = @RC_SRCS@
+TARGET_RC_BINSRC = @RC_BINSRC@
+TARGET_RC_BINARIES = @RC_BINARIES@
+
+default: all
+
+DEP_OBJECTS = $(TARGET_OBJECTS)
+
+include $(TOOLS_PATH)/depend.mk

Added: trunk/reactos/lib/oleaut32/cursoricon.h
--- vendor/wine/dlls/oleaut32/current/cursoricon.h	2004-12-31 15:27:32 UTC (rev 12578)
+++ trunk/reactos/lib/oleaut32/cursoricon.h	2004-12-31 15:28:42 UTC (rev 12579)
@@ -0,0 +1,89 @@
+/*
+ * Cursor and icon definitions
+ *
+ * Copyright 1995 Alexandre Julliard
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+#ifndef __WINE_CURSORICON_H
+#define __WINE_CURSORICON_H
+
+#include <windef.h>
+
+#include <pshpack1.h>
+
+typedef struct
+{
+    BYTE   bWidth;
+    BYTE   bHeight;
+    BYTE   bColorCount;
+    BYTE   bReserved;
+} ICONRESDIR;
+
+typedef struct
+{
+    WORD   wWidth;
+    WORD   wHeight;
+} CURSORDIR;
+
+typedef struct
+{   union
+    { ICONRESDIR icon;
+      CURSORDIR  cursor;
+    } ResInfo;
+    WORD   wPlanes;
+    WORD   wBitCount;
+    DWORD  dwBytesInRes;
+    WORD   wResId;
+} CURSORICONDIRENTRY;
+
+typedef struct
+{
+    WORD                idReserved;
+    WORD                idType;
+    WORD                idCount;
+    CURSORICONDIRENTRY  idEntries[1];
+} CURSORICONDIR;
+
+typedef struct {
+    BYTE bWidth;
+    BYTE bHeight;
+    BYTE bColorCount;
+    BYTE bReserved;
+    WORD xHotspot;
+    WORD yHotspot;
+    DWORD dwDIBSize;
+    DWORD dwDIBOffset;
+} CURSORICONFILEDIRENTRY;
+
+typedef struct
+{
+    WORD                idReserved;
+    WORD                idType;
+    WORD                idCount;
+    CURSORICONFILEDIRENTRY  idEntries[1];
+} CURSORICONFILEDIR;
+
+
+#include <poppack.h>
+
+#define CID_RESOURCE  0x0001
+#define CID_WIN32     0x0004
+#define CID_NONSHARED 0x0008
+
+extern void CURSORICON_FreeModuleIcons( HMODULE16 hModule );
+
+#endif /* __WINE_CURSORICON_H */

Added: trunk/reactos/lib/oleaut32/makefile
--- vendor/wine/dlls/oleaut32/current/makefile	2004-12-31 15:27:32 UTC (rev 12578)
+++ trunk/reactos/lib/oleaut32/makefile	2004-12-31 15:28:42 UTC (rev 12579)
@@ -0,0 +1,9 @@
+# $Id: makefile 8082 2004-02-07 18:53:59Z mf $
+
+PATH_TO_TOP = ../..
+
+TARGET_TYPE = winedll
+
+include $(PATH_TO_TOP)/rules.mak
+
+include $(TOOLS_PATH)/helper.mk

Modified: trunk/reactos/lib/oleaut32/oaidl_p.c
--- vendor/wine/dlls/oleaut32/current/oaidl_p.c	2004-12-31 15:27:32 UTC (rev 12578)
+++ trunk/reactos/lib/oleaut32/oaidl_p.c	2004-12-31 15:28:42 UTC (rev 12579)
@@ -57,8 +57,8 @@
     } MIDL_PROC_FORMAT_STRING;
 
 
-extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
-extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
+static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
+static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
 
 
 /* Standard interface: __MIDL_itf_oaidl_0000, ver. 0.0,
@@ -77,7 +77,7 @@
    GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
 
 
-extern const MIDL_STUB_DESC Object_StubDesc;
+static const MIDL_STUB_DESC Object_StubDesc;
 
 
 HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfoCount_Proxy( 
@@ -116,9 +116,11 @@
             if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
                 NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0] );
             
-            *pctinfo = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+            *pctinfo = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(UINT);
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -157,7 +159,7 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( UINT __RPC_FAR * )pctinfo = 0;
+    pctinfo = 0;
     RpcTryFinally
         {
         pctinfo = &_M0;
@@ -169,9 +171,11 @@
         
         _StubMsg.BufferLength = 4U + 4U;
         NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg);
-        *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pctinfo;
+        *( UINT __RPC_FAR * )_StubMsg.Buffer = *pctinfo;
+        _StubMsg.Buffer += sizeof(UINT);
         
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -224,9 +228,11 @@
             
             _StubMsg.BufferLength = 4U + 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = iTInfo;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = iTInfo;
+            _StubMsg.Buffer += sizeof(UINT);
             
-            *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid;
+            *( LCID __RPC_FAR * )_StubMsg.Buffer = lcid;
+            _StubMsg.Buffer += sizeof(LCID);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -239,7 +245,8 @@
                                   (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -280,15 +287,17 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0;
+    ppTInfo = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[6] );
         
-        iTInfo = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        iTInfo = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
-        lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++;
+        lcid = *( LCID __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(LCID);
         
         ppTInfo = &_M1;
         _M1 = 0;
@@ -315,7 +324,8 @@
                             (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -396,9 +406,11 @@
                                         (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[54] );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = cNames;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = cNames;
+            _StubMsg.Buffer += sizeof(UINT);
             
-            *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid;
+            *( LCID __RPC_FAR * )_StubMsg.Buffer = lcid;
+            _StubMsg.Buffer += sizeof(LCID);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -410,7 +422,8 @@
                                           (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[88],
                                           (unsigned char)0 );
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -454,8 +467,8 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPOLESTR __RPC_FAR * )rgszNames = 0;
-    ( DISPID __RPC_FAR * )rgDispId = 0;
+    rgszNames = 0;
+    rgDispId = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
@@ -472,9 +485,12 @@
                                       (unsigned char)0 );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        cNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        cNames = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
+
         
-        lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++;
+        lcid = *( LCID __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(LCID);
         
         rgDispId = NdrAllocate(&_StubMsg,cNames * 4);
         
@@ -505,7 +521,8 @@
                                     (unsigned char __RPC_FAR *)rgDispId,
                                     (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[88] );
         
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -626,22 +643,26 @@
                                        (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] );
             
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( DISPID __RPC_FAR * )_StubMsg.Buffer)++ = dispIdMember;
+            *( DISPID __RPC_FAR * )_StubMsg.Buffer = dispIdMember;
+            _StubMsg.Buffer += sizeof(DISPID);
             
             NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg,
                                      (unsigned char __RPC_FAR *)riid,
                                      (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] );
             
-            *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid;
+            *( LCID __RPC_FAR * )_StubMsg.Buffer = lcid;
+            _StubMsg.Buffer += sizeof(LCID);
             
-            *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = dwFlags;
+            *( DWORD __RPC_FAR * )_StubMsg.Buffer = dwFlags;
+            _StubMsg.Buffer += sizeof(DWORD);
             
             NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg,
                                       (unsigned char __RPC_FAR *)pDispParams,
                                       (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1080] );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = cVarRef;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = cVarRef;
+            _StubMsg.Buffer += sizeof(UINT);
             
             _StubMsg.MaxCount = cVarRef;
             
@@ -671,7 +692,8 @@
                                         (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *pArgErr = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+            *pArgErr = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg,
                                        (unsigned char __RPC_FAR * __RPC_FAR *)&rgVarRef,
@@ -679,7 +701,8 @@
                                        (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -744,27 +767,30 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( DISPPARAMS __RPC_FAR * )pDispParams = 0;
-    ( VARIANT __RPC_FAR * )pVarResult = 0;
-    ( EXCEPINFO __RPC_FAR * )pExcepInfo = 0;
-    ( UINT __RPC_FAR * )pArgErr = 0;
-    ( UINT __RPC_FAR * )rgVarRefIdx = 0;
-    ( VARIANTARG __RPC_FAR * )rgVarRef = 0;
+    pDispParams = 0;
+    pVarResult = 0;
+    pExcepInfo = 0;
+    pArgErr = 0;
+    rgVarRefIdx = 0;
+    rgVarRef = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[34] );
         
-        dispIdMember = *(( DISPID __RPC_FAR * )_StubMsg.Buffer)++;
+        dispIdMember = *( DISPID __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(DISPID);
         
         NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg,
                                    (unsigned char __RPC_FAR * __RPC_FAR *)&riid,
                                    (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38],
                                    (unsigned char)0 );
         
-        lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++;
+        lcid = *( LCID __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(LCID);
         
-        dwFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++;
+        dwFlags = *( DWORD __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(DWORD);
         
         NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg,
                                     (unsigned char __RPC_FAR * __RPC_FAR *)&pDispParams,
@@ -772,7 +798,8 @@
                                     (unsigned char)0 );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        cVarRef = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        cVarRef = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
         NdrConformantArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg,
                                       (unsigned char __RPC_FAR * __RPC_FAR *)&rgVarRefIdx,
@@ -838,7 +865,8 @@
                                   (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1138] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pArgErr;
+        *( UINT __RPC_FAR * )_StubMsg.Buffer = *pArgErr;
+        _StubMsg.Buffer += sizeof(UINT);
         
         _StubMsg.MaxCount = cVarRef;
         
@@ -847,7 +875,8 @@
                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -963,7 +992,8 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = celt;
+            *( ULONG __RPC_FAR * )_StubMsg.Buffer = celt;
+            _StubMsg.Buffer += sizeof(ULONG);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -976,9 +1006,11 @@
                                        (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *pCeltFetched = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++;
+            *pCeltFetched = *( ULONG __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(ULONG);
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -1027,14 +1059,15 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( VARIANT __RPC_FAR * )rgVar = 0;
-    ( ULONG __RPC_FAR * )pCeltFetched = 0;
+    rgVar = 0;
+    pCeltFetched = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[72] );
         
-        celt = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++;
+        celt = *( ULONG __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(ULONG);
         
         rgVar = NdrAllocate(&_StubMsg,celt * 16);
         pCeltFetched = &_M11;
@@ -1071,9 +1104,11 @@
                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1206] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = *pCeltFetched;
+        *( ULONG __RPC_FAR * )_StubMsg.Buffer = *pCeltFetched;
+        _StubMsg.Buffer += sizeof(ULONG);
         
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -1121,14 +1156,16 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = celt;
+            *( ULONG __RPC_FAR * )_StubMsg.Buffer = celt;
+            _StubMsg.Buffer += sizeof(ULONG);
             
             NdrProxySendReceive(This, &_StubMsg);
             
             if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
                 NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[84] );
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -1167,9 +1204,9 @@
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[84] );
         
-        celt = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++;
+        celt = *( ULONG __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(ULONG);
         
-        
         *_pdwStubPhase = STUB_CALL_SERVER;
         _RetVal = (((IEnumVARIANT*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> Skip((IEnumVARIANT *) ((CStdStubBuffer *)This)->pvServerObject,celt);
         
@@ -1177,7 +1214,8 @@
         
         _StubMsg.BufferLength = 4U;
         NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -1221,8 +1259,9 @@
             if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
                 NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[88] );
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
-            
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
+ 
             }
         RpcFinally
             {
@@ -1264,7 +1303,8 @@
         
         _StubMsg.BufferLength = 4U;
         NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -1326,7 +1366,8 @@
                                   (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -1365,7 +1406,7 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( IEnumVARIANT __RPC_FAR *__RPC_FAR * )ppEnum = 0;
+    ppEnum = 0;
     RpcTryFinally
         {
         ppEnum = &_M12;
@@ -1389,7 +1430,8 @@
                             (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1224] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -1548,9 +1590,11 @@
                                          (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal;
+            *( ULONG __RPC_FAR * )_StubMsg.Buffer = lHashVal;
+            _StubMsg.Buffer += sizeof(ULONG);
             
-            *(( WORD __RPC_FAR * )_StubMsg.Buffer)++ = wFlags;
+            *( WORD __RPC_FAR * )_StubMsg.Buffer = wFlags;
+            _StubMsg.Buffer += sizeof(WORD);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -1588,7 +1632,8 @@
                                       (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -1660,13 +1705,13 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPOLESTR  )szName = 0;
-    ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0;
-    ( DESCKIND __RPC_FAR * )pDescKind = 0;
-    ( LPFUNCDESC __RPC_FAR * )ppFuncDesc = 0;
-    ( LPVARDESC __RPC_FAR * )ppVarDesc = 0;
-    ( ITypeComp __RPC_FAR *__RPC_FAR * )ppTypeComp = 0;
-    ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0;
+    szName = 0;
+    ppTInfo = 0;
+    pDescKind = 0;
+    ppFuncDesc = 0;
+    ppVarDesc = 0;
+    ppTypeComp = 0;
+    pDummy = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
@@ -1678,9 +1723,11 @@
                                        (unsigned char)0 );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++;
+        lHashVal = *( ULONG __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(ULONG);
         
-        wFlags = *(( WORD __RPC_FAR * )_StubMsg.Buffer)++;
+        wFlags = *( WORD __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(WORD);
         
         ppTInfo = &_M15;
         _M15 = 0;
@@ -1759,7 +1806,8 @@
                                 (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1568] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -1845,7 +1893,8 @@
                                          (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal;
+            *( ULONG __RPC_FAR * )_StubMsg.Buffer = lHashVal;
+            _StubMsg.Buffer += sizeof(ULONG);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -1858,7 +1907,8 @@
                                   (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -1899,8 +1949,8 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPOLESTR  )szName = 0;
-    ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0;
+    szName = 0;
+    ppTInfo = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
@@ -1912,7 +1962,8 @@
                                        (unsigned char)0 );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++;
+        lHashVal = *( ULONG __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(ULONG);
         
         ppTInfo = &_M23;
         _M23 = 0;
@@ -1941,7 +1992,8 @@
                             (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2058,7 +2110,8 @@
                                       (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2103,8 +2156,8 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPTYPEATTR __RPC_FAR * )ppTypeAttr = 0;
-    ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0;
+    ppTypeAttr = 0;
+    pDummy = 0;
     RpcTryFinally
         {
         ppTypeAttr = &_M24;
@@ -2142,7 +2195,8 @@
                                 (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1644] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2212,7 +2266,8 @@
                                   (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2251,7 +2306,7 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( ITypeComp __RPC_FAR *__RPC_FAR * )ppTComp = 0;
+    ppTComp = 0;
     RpcTryFinally
         {
         ppTComp = &_M26;
@@ -2275,7 +2330,8 @@
                             (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2340,7 +2396,8 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = index;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -2358,7 +2415,8 @@
                                       (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2404,14 +2462,15 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPFUNCDESC __RPC_FAR * )ppFuncDesc = 0;
-    ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0;
+    ppFuncDesc = 0;
+    pDummy = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[158] );
         
-        index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        index = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
         ppFuncDesc = &_M27;
         _M27 = 0;
@@ -2449,7 +2508,8 @@
                                 (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1660] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2518,7 +2578,8 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = index;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -2536,7 +2597,8 @@
                                       (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2582,14 +2644,15 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( LPVARDESC __RPC_FAR * )ppVarDesc = 0;
-    ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0;
+    ppVarDesc = 0;
+    pDummy = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[170] );
         
-        index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        index = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
         ppVarDesc = &_M29;
         _M29 = 0;
@@ -2627,7 +2690,8 @@
                                 (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1676] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2693,9 +2757,11 @@
             
             _StubMsg.BufferLength = 4U + 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid;
+            *( MEMBERID __RPC_FAR * )_StubMsg.Buffer = memid;
+            _StubMsg.Buffer += sizeof(MEMBERID);
             
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = cMaxNames;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = cMaxNames;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrProxySendReceive(This, &_StubMsg);
             
@@ -2708,9 +2774,11 @@
                                        (unsigned char)0 );
             
             _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-            *pcNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+            *pcNames = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(UINT);
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2760,16 +2828,18 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( BSTR __RPC_FAR * )rgBstrNames = 0;
-    ( UINT __RPC_FAR * )pcNames = 0;
+    rgBstrNames = 0;
+    pcNames = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[182] );
         
-        memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++;
+        memid = *( MEMBERID __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(MEMBERID);
         
-        cMaxNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        cMaxNames = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
         rgBstrNames = NdrAllocate(&_StubMsg,cMaxNames * 4);
         pcNames = &_M34;
@@ -2807,9 +2877,11 @@
                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1690] );
         
         _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3);
-        *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pcNames;
+        *( UINT __RPC_FAR * )_StubMsg.Buffer = *pcNames;
+        _StubMsg.Buffer += sizeof(UINT);
         
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2862,16 +2934,19 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = index;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrProxySendReceive(This, &_StubMsg);
             
             if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
                 NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[196] );
             
-            *pRefType = *(( HREFTYPE __RPC_FAR * )_StubMsg.Buffer)++;
+            *pRefType = *( HREFTYPE __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HREFTYPE);
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
         RpcFinally
@@ -2911,13 +2986,14 @@
                      &_StubMsg,
                      &Object_StubDesc,
                      _pRpcChannelBuffer);
-    ( HREFTYPE __RPC_FAR * )pRefType = 0;
+    pRefType = 0;
     RpcTryFinally
         {
         if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[196] );
         
-        index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++;
+        index = *( UINT __RPC_FAR * )_StubMsg.Buffer;
+        _StubMsg.Buffer += sizeof(UINT);
         
         pRefType = &_M35;
         
@@ -2931,9 +3007,11 @@
         
         _StubMsg.BufferLength = 4U + 4U;
         NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg);
-        *(( HREFTYPE __RPC_FAR * )_StubMsg.Buffer)++ = *pRefType;
+        *( HREFTYPE __RPC_FAR * )_StubMsg.Buffer = *pRefType;
+        _StubMsg.Buffer += sizeof(HREFTYPE);
         
-        *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal;
+        *( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
+        _StubMsg.Buffer += sizeof(HRESULT);
         
         }
     RpcFinally
@@ -2978,16 +3056,19 @@
             
             _StubMsg.BufferLength = 4U;
             NdrProxyGetBuffer(This, &_StubMsg);
-            *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index;
+            *( UINT __RPC_FAR * )_StubMsg.Buffer = index;
+            _StubMsg.Buffer += sizeof(UINT);
             
             NdrProxySendReceive(This, &_StubMsg);
             
             if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
                 NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[196] );
             
-            *pImplTypeFlags = *(( INT __RPC_FAR * )_StubMsg.Buffer)++;
+            *pImplTypeFlags = *( INT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(INT);
             
-            _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++;
+            _RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
+            _StubMsg.Buffer += sizeof(HRESULT);
             
             }
[truncated at 1000 lines; 2291 more skipped]