diff --git a/dlls/oleaut32/Makefile.in b/dlls/oleaut32/Makefile.in index a39a04a97c3..6bd85d378cf 100644 --- a/dlls/oleaut32/Makefile.in +++ b/dlls/oleaut32/Makefile.in @@ -4,7 +4,7 @@ TOPOBJDIR = ../.. SRCDIR = @srcdir@ VPATH = @srcdir@ MODULE = oleaut32.dll -IMPORTS = ole32 user32 gdi32 advapi32 kernel32 ntdll +IMPORTS = ole32 rpcrt4 user32 gdi32 advapi32 kernel32 ntdll DELAYIMPORTS = comctl32 ALTNAMES = ole2disp.dll typelib.dll EXTRALIBS = $(LIBUNICODE) $(LIBUUID) @GIFLIB@ @JPEGLIB@ @@ -18,6 +18,7 @@ C_SRCS = \ connpt.c \ dispatch.c \ hash.c \ + oaidl_p.c \ oleaut.c \ olefont.c \ olepicture.c \ @@ -26,6 +27,7 @@ C_SRCS = \ stubs.c \ tmarshal.c \ typelib.c \ + usrmarshal.c \ variant.c C_SRCS16 = \ diff --git a/dlls/oleaut32/oaidl_p.c b/dlls/oleaut32/oaidl_p.c new file mode 100644 index 00000000000..0e9ed954d89 --- /dev/null +++ b/dlls/oleaut32/oaidl_p.c @@ -0,0 +1,13486 @@ +/* this ALWAYS GENERATED file contains the proxy stub code */ + + +/* File created by MIDL compiler version 5.01.0164 */ +/* at Tue Jan 07 22:24:52 2003 + */ +/* Compiler settings for oaidl.idl: + Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext + error checks: allocation ref bounds_check enum stub_data +*/ +/*@@MIDL_FILE_HEADING( ) */ + + +/* verify that the version is high enough to compile this file*/ +#ifndef __REDQ_RPCPROXY_H_VERSION__ +#define __REQUIRED_RPCPROXY_H_VERSION__ 440 +#endif + + +#include "objbase.h" +#include "rpcproxy.h" +#ifndef __RPCPROXY_H_VERSION__ +#error this stub requires an updated version of +#endif /* __RPCPROXY_H_VERSION__ */ + + +#include "oaidl.h" + +#define TYPE_FORMAT_STRING_SIZE 1907 +#define PROC_FORMAT_STRING_SIZE 495 + +typedef struct _MIDL_TYPE_FORMAT_STRING + { + short Pad; + unsigned char Format[ TYPE_FORMAT_STRING_SIZE ]; + } MIDL_TYPE_FORMAT_STRING; + +typedef struct _MIDL_PROC_FORMAT_STRING + { + short Pad; + unsigned char Format[ PROC_FORMAT_STRING_SIZE ]; + } MIDL_PROC_FORMAT_STRING; + + +extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString; +extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString; + + +/* Standard interface: __MIDL_itf_oaidl_0000, ver. 0.0, + GUID={0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}} */ + + +/* Standard interface: IOleAutomationTypes, ver. 1.0, + GUID={0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}} */ + + +/* Object interface: IUnknown, ver. 0.0, + GUID={0x00000000,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: IDispatch, ver. 0.0, + GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfoCount_Proxy( + IDispatch __RPC_FAR * This, + /* [out] */ UINT __RPC_FAR *pctinfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!pctinfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pctinfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IDispatch_GetTypeInfoCount_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + UINT _M0; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT __RPC_FAR *pctinfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( UINT __RPC_FAR * )pctinfo = 0; + RpcTryFinally + { + pctinfo = &_M0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IDispatch*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeInfoCount((IDispatch *) ((CStdStubBuffer *)This)->pvServerObject,pctinfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pctinfo; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IDispatch_GetTypeInfo_Proxy( + IDispatch __RPC_FAR * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = iTInfo; + + *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[6] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTInfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IDispatch_GetTypeInfo_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M1; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT iTInfo; + LCID lcid; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeInfo __RPC_FAR *__RPC_FAR * )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)++; + + lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++; + + ppTInfo = &_M1; + _M1 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IDispatch*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeInfo( + (IDispatch *) ((CStdStubBuffer *)This)->pvServerObject, + iTInfo, + lcid, + ppTInfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[6] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IDispatch_GetIDsOfNames_Proxy( + IDispatch __RPC_FAR * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames, + /* [in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID __RPC_FAR *rgDispId) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + if(!riid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!rgszNames) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!rgDispId) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U + 7U + 7U + 7U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + _StubMsg.MaxCount = cNames; + + NdrConformantArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgszNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[54] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + _StubMsg.MaxCount = cNames; + + NdrConformantArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgszNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[54] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = cNames; + + *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[16] ); + + NdrConformantArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgDispId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[88], + (unsigned char)0 ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = cNames; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[84], + ( void __RPC_FAR * )rgDispId); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IDispatch_GetIDsOfNames_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT cNames; + LCID lcid; + DISPID __RPC_FAR *rgDispId; + LPOLESTR __RPC_FAR *rgszNames; + REFIID riid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR __RPC_FAR * )rgszNames = 0; + ( DISPID __RPC_FAR * )rgDispId = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[16] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + NdrConformantArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgszNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[54], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + cNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++; + + rgDispId = NdrAllocate(&_StubMsg,cNames * 4); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IDispatch*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetIDsOfNames( + (IDispatch *) ((CStdStubBuffer *)This)->pvServerObject, + riid, + rgszNames, + cNames, + lcid, + rgDispId); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 7U; + _StubMsg.MaxCount = cNames; + + NdrConformantArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgDispId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[88] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = cNames; + + NdrConformantArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgDispId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[88] ); + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + _StubMsg.MaxCount = cNames; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)rgszNames, + &__MIDL_TypeFormatString.Format[50] ); + + if ( rgDispId ) + _StubMsg.pfnFree( rgDispId ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatch_RemoteInvoke_Proxy( + IDispatch __RPC_FAR * This, + /* [in] */ DISPID dispIdMember, + /* [in] */ REFIID riid, + /* [in] */ LCID lcid, + /* [in] */ DWORD dwFlags, + /* [in] */ DISPPARAMS __RPC_FAR *pDispParams, + /* [out] */ VARIANT __RPC_FAR *pVarResult, + /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo, + /* [out] */ UINT __RPC_FAR *pArgErr, + /* [in] */ UINT cVarRef, + /* [size_is][in] */ UINT __RPC_FAR *rgVarRefIdx, + /* [size_is][out][in] */ VARIANTARG __RPC_FAR *rgVarRef) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarResult) + { + MIDL_memset( + pVarResult, + 0, + sizeof( VARIANT )); + } + if(pExcepInfo) + { + MIDL_memset( + pExcepInfo, + 0, + sizeof( EXCEPINFO )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!riid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDispParams) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarResult) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pExcepInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pArgErr) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!rgVarRefIdx) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!rgVarRef) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U + 11U + 7U + 4U + 11U + 7U + 7U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pDispParams, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1080] ); + + _StubMsg.MaxCount = cVarRef; + + NdrConformantArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgVarRefIdx, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1170] ); + + _StubMsg.MaxCount = cVarRef; + + NdrComplexArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] ); + + NdrProxyGetBuffer(This, &_StubMsg); + *(( DISPID __RPC_FAR * )_StubMsg.Buffer)++ = dispIdMember; + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid; + + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = dwFlags; + + 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; + + _StubMsg.MaxCount = cVarRef; + + NdrConformantArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgVarRefIdx, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1170] ); + + _StubMsg.MaxCount = cVarRef; + + NdrComplexArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[34] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarResult, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pExcepInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1138], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pArgErr = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarResult); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1120], + ( void __RPC_FAR * )pExcepInfo); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pArgErr); + _StubMsg.MaxCount = cVarRef; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1180], + ( void __RPC_FAR * )rgVarRef); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IDispatch_RemoteInvoke_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M6; + UINT _M7; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + EXCEPINFO _pExcepInfoM; + UINT cVarRef; + DISPID dispIdMember; + DWORD dwFlags; + LCID lcid; + UINT __RPC_FAR *pArgErr; + DISPPARAMS __RPC_FAR *pDispParams; + EXCEPINFO __RPC_FAR *pExcepInfo; + VARIANT __RPC_FAR *pVarResult; + VARIANTARG __RPC_FAR *rgVarRef; + UINT __RPC_FAR *rgVarRefIdx; + REFIID riid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_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; + 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)++; + + 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)++; + + dwFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDispParams, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1080], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + cVarRef = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrConformantArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgVarRefIdx, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1170], + (unsigned char)0 ); + + NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184], + (unsigned char)0 ); + + pVarResult = &_M6; + MIDL_memset( + pVarResult, + 0, + sizeof( VARIANT )); + pExcepInfo = &_pExcepInfoM; + pArgErr = &_M7; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = IDispatch_Invoke_Stub( + (IDispatch *) ((CStdStubBuffer *)This)->pvServerObject, + dispIdMember, + riid, + lcid, + dwFlags, + pDispParams, + pVarResult, + pExcepInfo, + pArgErr, + cVarRef, + rgVarRefIdx, + rgVarRef); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 7U + 11U + 7U + 7U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarResult, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pExcepInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1138] ); + + _StubMsg.MaxCount = cVarRef; + + NdrComplexArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarResult, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pExcepInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1138] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pArgErr; + + _StubMsg.MaxCount = cVarRef; + + NdrComplexArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgVarRef, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1184] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDispParams, + &__MIDL_TypeFormatString.Format[98] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarResult, + &__MIDL_TypeFormatString.Format[1102] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pExcepInfo, + &__MIDL_TypeFormatString.Format[1120] ); + + _StubMsg.MaxCount = cVarRef; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)rgVarRef, + &__MIDL_TypeFormatString.Format[1180] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(7) _IDispatchProxyVtbl = +{ + { &IID_IDispatch }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + IDispatch_GetTypeInfoCount_Proxy , + IDispatch_GetTypeInfo_Proxy , + IDispatch_GetIDsOfNames_Proxy , + IDispatch_Invoke_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION IDispatch_table[] = +{ + IDispatch_GetTypeInfoCount_Stub, + IDispatch_GetTypeInfo_Stub, + IDispatch_GetIDsOfNames_Stub, + IDispatch_RemoteInvoke_Stub +}; + +const CInterfaceStubVtbl _IDispatchStubVtbl = +{ + { + &IID_IDispatch, + 0, + 7, + &IDispatch_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: IEnumVARIANT, ver. 0.0, + GUID={0x00020404,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumVARIANT_RemoteNext_Proxy( + IEnumVARIANT __RPC_FAR * This, + /* [in] */ ULONG celt, + /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar, + /* [out] */ ULONG __RPC_FAR *pCeltFetched) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(rgVar) + { + MIDL_memset( + rgVar, + 0, + celt * sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!rgVar) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pCeltFetched) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = celt; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[72] ); + + NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgVar, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1206], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pCeltFetched = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = celt; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = _StubMsg.MaxCount; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1202], + ( void __RPC_FAR * )rgVar); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pCeltFetched); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IEnumVARIANT_RemoteNext_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ULONG _M11; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG celt; + ULONG __RPC_FAR *pCeltFetched; + VARIANT __RPC_FAR *rgVar; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )rgVar = 0; + ( ULONG __RPC_FAR * )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)++; + + rgVar = NdrAllocate(&_StubMsg,celt * 16); + pCeltFetched = &_M11; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = IEnumVARIANT_Next_Stub( + (IEnumVARIANT *) ((CStdStubBuffer *)This)->pvServerObject, + celt, + rgVar, + pCeltFetched); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 12U + 7U + 7U; + _StubMsg.MaxCount = celt; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pCeltFetched ? *pCeltFetched : 0; + + NdrComplexArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgVar, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1206] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = celt; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pCeltFetched ? *pCeltFetched : 0; + + NdrComplexArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgVar, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1206] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = *pCeltFetched; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + _StubMsg.MaxCount = celt; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pCeltFetched ? *pCeltFetched : 0; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)rgVar, + &__MIDL_TypeFormatString.Format[1202] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IEnumVARIANT_Skip_Proxy( + IEnumVARIANT __RPC_FAR * This, + /* [in] */ ULONG celt) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = celt; + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IEnumVARIANT_Skip_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG celt; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + 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)++; + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IEnumVARIANT*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> Skip((IEnumVARIANT *) ((CStdStubBuffer *)This)->pvServerObject,celt); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IEnumVARIANT_Reset_Proxy( + IEnumVARIANT __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IEnumVARIANT_Reset_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IEnumVARIANT*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> Reset((IEnumVARIANT *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IEnumVARIANT_Clone_Proxy( + IEnumVARIANT __RPC_FAR * This, + /* [out] */ IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppEnum) + { + MIDL_memset( + ppEnum, + 0, + sizeof( IEnumVARIANT __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!ppEnum) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[90] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppEnum, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1224], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1224], + ( void __RPC_FAR * )ppEnum); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IEnumVARIANT_Clone_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + IEnumVARIANT __RPC_FAR *_M12; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( IEnumVARIANT __RPC_FAR *__RPC_FAR * )ppEnum = 0; + RpcTryFinally + { + ppEnum = &_M12; + _M12 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IEnumVARIANT*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> Clone((IEnumVARIANT *) ((CStdStubBuffer *)This)->pvServerObject,ppEnum); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppEnum, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1224] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppEnum, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1224] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppEnum, + &__MIDL_TypeFormatString.Format[1224] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(7) _IEnumVARIANTProxyVtbl = +{ + { &IID_IEnumVARIANT }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + IEnumVARIANT_Next_Proxy , + IEnumVARIANT_Skip_Proxy , + IEnumVARIANT_Reset_Proxy , + IEnumVARIANT_Clone_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION IEnumVARIANT_table[] = +{ + IEnumVARIANT_RemoteNext_Stub, + IEnumVARIANT_Skip_Stub, + IEnumVARIANT_Reset_Stub, + IEnumVARIANT_Clone_Stub +}; + +const CInterfaceStubVtbl _IEnumVARIANTStubVtbl = +{ + { + &IID_IEnumVARIANT, + 0, + 7, + &IEnumVARIANT_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeComp, ver. 0.0, + GUID={0x00020403,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBind_Proxy( + ITypeComp __RPC_FAR * This, + /* [in] */ LPOLESTR szName, + /* [in] */ ULONG lHashVal, + /* [in] */ WORD wFlags, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo, + /* [out] */ DESCKIND __RPC_FAR *pDescKind, + /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc, + /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc, + /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTypeComp, + /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + if(ppFuncDesc) + { + *ppFuncDesc = 0; + } + if(ppVarDesc) + { + *ppVarDesc = 0; + } + if(ppTypeComp) + { + MIDL_memset( + ppTypeComp, + 0, + sizeof( ITypeComp __RPC_FAR *__RPC_FAR * )); + } + if(pDummy) + { + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!szName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDescKind) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppFuncDesc) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppVarDesc) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppTypeComp) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDummy) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U + 10U + 4U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal; + + *(( WORD __RPC_FAR * )_StubMsg.Buffer)++ = wFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[96] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDescKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250], + (unsigned char)0 ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254], + (unsigned char)0 ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464], + (unsigned char)0 ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTypeComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1568], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTInfo); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1250], + ( void __RPC_FAR * )pDescKind); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1254], + ( void __RPC_FAR * )ppFuncDesc); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1464], + ( void __RPC_FAR * )ppVarDesc); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1540], + ( void __RPC_FAR * )ppTypeComp); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1562], + ( void __RPC_FAR * )pDummy); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeComp_RemoteBind_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M15; + DESCKIND _M16; + LPFUNCDESC _M17; + LPVARDESC _M18; + ITypeComp __RPC_FAR *_M19; + CLEANLOCALSTORAGE _M20; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG lHashVal; + DESCKIND __RPC_FAR *pDescKind; + CLEANLOCALSTORAGE __RPC_FAR *pDummy; + LPFUNCDESC __RPC_FAR *ppFuncDesc; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + ITypeComp __RPC_FAR *__RPC_FAR *ppTypeComp; + LPVARDESC __RPC_FAR *ppVarDesc; + LPOLESTR szName; + WORD wFlags; + +NdrStubInitialize( + _pRpcMessage, + &_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; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[96] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + wFlags = *(( WORD __RPC_FAR * )_StubMsg.Buffer)++; + + ppTInfo = &_M15; + _M15 = 0; + pDescKind = &_M16; + ppFuncDesc = &_M17; + _M17 = 0; + ppVarDesc = &_M18; + _M18 = 0; + ppTypeComp = &_M19; + _M19 = 0; + pDummy = &_M20; + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeComp_Bind_Stub( + (ITypeComp *) ((CStdStubBuffer *)This)->pvServerObject, + szName, + lHashVal, + wFlags, + ppTInfo, + pDescKind, + ppFuncDesc, + ppVarDesc, + ppTypeComp, + pDummy); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U + 4U + 15U + 0U + 11U + 7U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254] ); + + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464] ); + + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTypeComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDescKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250] ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254] ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464] ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTypeComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1568] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[6] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + &__MIDL_TypeFormatString.Format[1254] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + &__MIDL_TypeFormatString.Format[1464] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTypeComp, + &__MIDL_TypeFormatString.Format[1540] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDummy, + &__MIDL_TypeFormatString.Format[1562] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBindType_Proxy( + ITypeComp __RPC_FAR * This, + /* [in] */ LPOLESTR szName, + /* [in] */ ULONG lHashVal, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!szName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U + 10U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[130] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTInfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeComp_RemoteBindType_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M23; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG lHashVal; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + LPOLESTR szName; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szName = 0; + ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[130] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + ppTInfo = &_M23; + _M23 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeComp_BindType_Stub( + (ITypeComp *) ((CStdStubBuffer *)This)->pvServerObject, + szName, + lHashVal, + ppTInfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[6] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(5) _ITypeCompProxyVtbl = +{ + { &IID_ITypeComp }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeComp_Bind_Proxy , + ITypeComp_BindType_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeComp_table[] = +{ + ITypeComp_RemoteBind_Stub, + ITypeComp_RemoteBindType_Stub +}; + +const CInterfaceStubVtbl _ITypeCompStubVtbl = +{ + { + &IID_ITypeComp, + 0, + 5, + &ITypeComp_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeInfo, ver. 0.0, + GUID={0x00020401,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetTypeAttr_Proxy( + ITypeInfo __RPC_FAR * This, + /* [out] */ LPTYPEATTR __RPC_FAR *ppTypeAttr, + /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTypeAttr) + { + *ppTypeAttr = 0; + } + if(pDummy) + { + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!ppTypeAttr) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDummy) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[142] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTypeAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1578], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1644], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1578], + ( void __RPC_FAR * )ppTypeAttr); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1638], + ( void __RPC_FAR * )pDummy); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + LPTYPEATTR _M24; + CLEANLOCALSTORAGE _M25; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CLEANLOCALSTORAGE __RPC_FAR *pDummy; + LPTYPEATTR __RPC_FAR *ppTypeAttr; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPTYPEATTR __RPC_FAR * )ppTypeAttr = 0; + ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0; + RpcTryFinally + { + ppTypeAttr = &_M24; + _M24 = 0; + pDummy = &_M25; + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetTypeAttr_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + ppTypeAttr, + pDummy); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 7U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTypeAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1578] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTypeAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1578] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1644] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTypeAttr, + &__MIDL_TypeFormatString.Format[1578] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDummy, + &__MIDL_TypeFormatString.Format[1638] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo_GetTypeComp_Proxy( + ITypeInfo __RPC_FAR * This, + /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTComp) + { + MIDL_memset( + ppTComp, + 0, + sizeof( ITypeComp __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!ppTComp) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[152] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1540], + ( void __RPC_FAR * )ppTComp); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_GetTypeComp_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeComp __RPC_FAR *_M26; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ITypeComp __RPC_FAR *__RPC_FAR *ppTComp; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeComp __RPC_FAR *__RPC_FAR * )ppTComp = 0; + RpcTryFinally + { + ppTComp = &_M26; + _M26 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeComp((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject,ppTComp); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + &__MIDL_TypeFormatString.Format[1540] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetFuncDesc_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ LPFUNCDESC __RPC_FAR *ppFuncDesc, + /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppFuncDesc) + { + *ppFuncDesc = 0; + } + if(pDummy) + { + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + if(!ppFuncDesc) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDummy) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[158] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1660], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1254], + ( void __RPC_FAR * )ppFuncDesc); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1654], + ( void __RPC_FAR * )pDummy); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + LPFUNCDESC _M27; + CLEANLOCALSTORAGE _M28; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + CLEANLOCALSTORAGE __RPC_FAR *pDummy; + LPFUNCDESC __RPC_FAR *ppFuncDesc; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPFUNCDESC __RPC_FAR * )ppFuncDesc = 0; + ( CLEANLOCALSTORAGE __RPC_FAR * )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)++; + + ppFuncDesc = &_M27; + _M27 = 0; + pDummy = &_M28; + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetFuncDesc_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + index, + ppFuncDesc, + pDummy); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 7U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1254] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1660] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppFuncDesc, + &__MIDL_TypeFormatString.Format[1254] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDummy, + &__MIDL_TypeFormatString.Format[1654] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetVarDesc_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ LPVARDESC __RPC_FAR *ppVarDesc, + /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppVarDesc) + { + *ppVarDesc = 0; + } + if(pDummy) + { + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!ppVarDesc) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDummy) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[170] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1676], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1464], + ( void __RPC_FAR * )ppVarDesc); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1670], + ( void __RPC_FAR * )pDummy); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + LPVARDESC _M29; + CLEANLOCALSTORAGE _M30; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + CLEANLOCALSTORAGE __RPC_FAR *pDummy; + LPVARDESC __RPC_FAR *ppVarDesc; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPVARDESC __RPC_FAR * )ppVarDesc = 0; + ( CLEANLOCALSTORAGE __RPC_FAR * )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)++; + + ppVarDesc = &_M29; + _M29 = 0; + pDummy = &_M30; + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetVarDesc_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + index, + ppVarDesc, + pDummy); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 7U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1464] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1676] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppVarDesc, + &__MIDL_TypeFormatString.Format[1464] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDummy, + &__MIDL_TypeFormatString.Format[1670] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetNames_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [length_is][size_is][out] */ BSTR __RPC_FAR *rgBstrNames, + /* [in] */ UINT cMaxNames, + /* [out] */ UINT __RPC_FAR *pcNames) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(rgBstrNames) + { + MIDL_memset( + rgBstrNames, + 0, + cMaxNames * sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 7); + + + + if(!rgBstrNames) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pcNames) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = cMaxNames; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[182] ); + + NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgBstrNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1690], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pcNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = cMaxNames; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = _StubMsg.MaxCount; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1686], + ( void __RPC_FAR * )rgBstrNames); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pcNames); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetNames_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + UINT _M34; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT cMaxNames; + MEMBERID memid; + UINT __RPC_FAR *pcNames; + BSTR __RPC_FAR *rgBstrNames; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )rgBstrNames = 0; + ( UINT __RPC_FAR * )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)++; + + cMaxNames = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + rgBstrNames = NdrAllocate(&_StubMsg,cMaxNames * 4); + pcNames = &_M34; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetNames_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + rgBstrNames, + cMaxNames, + pcNames); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 12U + 7U + 7U; + _StubMsg.MaxCount = cMaxNames; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcNames ? *pcNames : 0; + + NdrComplexArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgBstrNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1690] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = cMaxNames; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcNames ? *pcNames : 0; + + NdrComplexArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgBstrNames, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1690] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pcNames; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + _StubMsg.MaxCount = cMaxNames; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcNames ? *pcNames : 0; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)rgBstrNames, + &__MIDL_TypeFormatString.Format[1686] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeOfImplType_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ HREFTYPE __RPC_FAR *pRefType) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 8); + + + + if(!pRefType) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + 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)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pRefType); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_GetRefTypeOfImplType_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HREFTYPE _M35; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + HREFTYPE __RPC_FAR *pRefType; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( HREFTYPE __RPC_FAR * )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)++; + + pRefType = &_M35; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetRefTypeOfImplType( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pRefType); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HREFTYPE __RPC_FAR * )_StubMsg.Buffer)++ = *pRefType; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo_GetImplTypeFlags_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ INT __RPC_FAR *pImplTypeFlags) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 9); + + + + if(!pImplTypeFlags) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + 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)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pImplTypeFlags); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_GetImplTypeFlags_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + INT _M36; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + INT __RPC_FAR *pImplTypeFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( INT __RPC_FAR * )pImplTypeFlags = 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)++; + + pImplTypeFlags = &_M36; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetImplTypeFlags( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pImplTypeFlags); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( INT __RPC_FAR * )_StubMsg.Buffer)++ = *pImplTypeFlags; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalGetIDsOfNames_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 10); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetIDsOfNames_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalInvoke_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 11); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalInvoke_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_Invoke_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDocumentation_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [in] */ DWORD refPtrFlags, + /* [out] */ BSTR __RPC_FAR *pBstrName, + /* [out] */ BSTR __RPC_FAR *pBstrDocString, + /* [out] */ DWORD __RPC_FAR *pdwHelpContext, + /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrName) + { + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + } + if(pBstrDocString) + { + MIDL_memset( + pBstrDocString, + 0, + sizeof( BSTR )); + } + if(pBstrHelpFile) + { + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 12); + + + + if(!pBstrName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrDocString) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pdwHelpContext) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrHelpFile) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = refPtrFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[204] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pdwHelpContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrName); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrDocString); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pdwHelpContext); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrHelpFile); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M37; + BSTR _M38; + DWORD _M39; + BSTR _M40; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + MEMBERID memid; + BSTR __RPC_FAR *pBstrDocString; + BSTR __RPC_FAR *pBstrHelpFile; + BSTR __RPC_FAR *pBstrName; + DWORD __RPC_FAR *pdwHelpContext; + DWORD refPtrFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrName = 0; + ( BSTR __RPC_FAR * )pBstrDocString = 0; + ( DWORD __RPC_FAR * )pdwHelpContext = 0; + ( BSTR __RPC_FAR * )pBstrHelpFile = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[204] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + refPtrFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + pBstrName = &_M37; + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + pBstrDocString = &_M38; + MIDL_memset( + pBstrDocString, + 0, + sizeof( BSTR )); + pdwHelpContext = &_M39; + pBstrHelpFile = &_M40; + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetDocumentation_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + refPtrFlags, + pBstrName, + pBstrDocString, + pdwHelpContext, + pBstrHelpFile); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 15U + 11U + 11U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = *pdwHelpContext; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDllEntry_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [in] */ INVOKEKIND invKind, + /* [in] */ DWORD refPtrFlags, + /* [out] */ BSTR __RPC_FAR *pBstrDllName, + /* [out] */ BSTR __RPC_FAR *pBstrName, + /* [out] */ WORD __RPC_FAR *pwOrdinal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrDllName) + { + MIDL_memset( + pBstrDllName, + 0, + sizeof( BSTR )); + } + if(pBstrName) + { + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 13); + + + + if(!pBstrDllName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pwOrdinal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + NdrSimpleTypeMarshall( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( unsigned char __RPC_FAR * )&invKind, + 14); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = refPtrFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[226] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrDllName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 1) & ~ 0x1); + *pwOrdinal = *(( WORD __RPC_FAR * )_StubMsg.Buffer)++; + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrDllName); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrName); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1712], + ( void __RPC_FAR * )pwOrdinal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M41; + BSTR _M42; + WORD _M43; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + INVOKEKIND invKind; + MEMBERID memid; + BSTR __RPC_FAR *pBstrDllName; + BSTR __RPC_FAR *pBstrName; + WORD __RPC_FAR *pwOrdinal; + DWORD refPtrFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrDllName = 0; + ( BSTR __RPC_FAR * )pBstrName = 0; + ( WORD __RPC_FAR * )pwOrdinal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[226] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleTypeUnmarshall( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( unsigned char __RPC_FAR * )&invKind, + 14); + refPtrFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + pBstrDllName = &_M41; + MIDL_memset( + pBstrDllName, + 0, + sizeof( BSTR )); + pBstrName = &_M42; + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + pwOrdinal = &_M43; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetDllEntry_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + invKind, + refPtrFlags, + pBstrDllName, + pBstrName, + pwOrdinal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 15U + 5U + 10U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDllName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrDllName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 1) & ~ 0x1); + *(( WORD __RPC_FAR * )_StubMsg.Buffer)++ = *pwOrdinal; + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDllName, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo_GetRefTypeInfo_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ HREFTYPE hRefType, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 14); + + + + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( HREFTYPE __RPC_FAR * )_StubMsg.Buffer)++ = hRefType; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[246] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTInfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_GetRefTypeInfo_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M44; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + HREFTYPE hRefType; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[246] ); + + hRefType = *(( HREFTYPE __RPC_FAR * )_StubMsg.Buffer)++; + + ppTInfo = &_M44; + _M44 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetRefTypeInfo( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + hRefType, + ppTInfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[6] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalAddressOfMember_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 15); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_AddressOfMember_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteCreateInstance_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppvObj) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppvObj) + { + MIDL_memset( + ppvObj, + 0, + sizeof( IUnknown __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 16); + + + + if(!riid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppvObj) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[254] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppvObj, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1716], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1716], + ( void __RPC_FAR * )ppvObj); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + IUnknown __RPC_FAR *__RPC_FAR *_M45; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + IUnknown __RPC_FAR *__RPC_FAR *ppvObj; + REFIID riid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( IUnknown __RPC_FAR *__RPC_FAR * )ppvObj = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[254] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + ppvObj = (void *)&_M45; + _M45 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_CreateInstance_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + riid, + ppvObj); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppvObj, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1716] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppvObj, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1716] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppvObj, + &__MIDL_TypeFormatString.Format[1716] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo_GetMops_Proxy( + ITypeInfo __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [out] */ BSTR __RPC_FAR *pBstrMops) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrMops) + { + MIDL_memset( + pBstrMops, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 17); + + + + if(!pBstrMops) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[264] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrMops, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrMops); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_GetMops_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M46; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + MEMBERID memid; + BSTR __RPC_FAR *pBstrMops; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrMops = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[264] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + pBstrMops = &_M46; + MIDL_memset( + pBstrMops, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetMops( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + pBstrMops); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrMops, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrMops, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrMops, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetContainingTypeLib_Proxy( + ITypeInfo __RPC_FAR * This, + /* [out] */ ITypeLib __RPC_FAR *__RPC_FAR *ppTLib, + /* [out] */ UINT __RPC_FAR *pIndex) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTLib) + { + MIDL_memset( + ppTLib, + 0, + sizeof( ITypeLib __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 18); + + + + if(!ppTLib) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pIndex) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[272] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTLib, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1726], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pIndex = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1726], + ( void __RPC_FAR * )ppTLib); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pIndex); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeLib __RPC_FAR *_M47; + UINT _M48; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT __RPC_FAR *pIndex; + ITypeLib __RPC_FAR *__RPC_FAR *ppTLib; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeLib __RPC_FAR *__RPC_FAR * )ppTLib = 0; + ( UINT __RPC_FAR * )pIndex = 0; + RpcTryFinally + { + ppTLib = &_M47; + _M47 = 0; + pIndex = &_M48; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_GetContainingTypeLib_Stub( + (ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject, + ppTLib, + pIndex); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTLib, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1726] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTLib, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1726] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pIndex; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTLib, + &__MIDL_TypeFormatString.Format[1726] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseTypeAttr_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 19); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_ReleaseTypeAttr_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseFuncDesc_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 20); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_ReleaseFuncDesc_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseVarDesc_Proxy( + ITypeInfo __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 21); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo_ReleaseVarDesc_Stub((ITypeInfo *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(22) _ITypeInfoProxyVtbl = +{ + { &IID_ITypeInfo }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeInfo_GetTypeAttr_Proxy , + ITypeInfo_GetTypeComp_Proxy , + ITypeInfo_GetFuncDesc_Proxy , + ITypeInfo_GetVarDesc_Proxy , + ITypeInfo_GetNames_Proxy , + ITypeInfo_GetRefTypeOfImplType_Proxy , + ITypeInfo_GetImplTypeFlags_Proxy , + ITypeInfo_GetIDsOfNames_Proxy , + ITypeInfo_Invoke_Proxy , + ITypeInfo_GetDocumentation_Proxy , + ITypeInfo_GetDllEntry_Proxy , + ITypeInfo_GetRefTypeInfo_Proxy , + ITypeInfo_AddressOfMember_Proxy , + ITypeInfo_CreateInstance_Proxy , + ITypeInfo_GetMops_Proxy , + ITypeInfo_GetContainingTypeLib_Proxy , + ITypeInfo_ReleaseTypeAttr_Proxy , + ITypeInfo_ReleaseFuncDesc_Proxy , + ITypeInfo_ReleaseVarDesc_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeInfo_table[] = +{ + ITypeInfo_RemoteGetTypeAttr_Stub, + ITypeInfo_GetTypeComp_Stub, + ITypeInfo_RemoteGetFuncDesc_Stub, + ITypeInfo_RemoteGetVarDesc_Stub, + ITypeInfo_RemoteGetNames_Stub, + ITypeInfo_GetRefTypeOfImplType_Stub, + ITypeInfo_GetImplTypeFlags_Stub, + ITypeInfo_LocalGetIDsOfNames_Stub, + ITypeInfo_LocalInvoke_Stub, + ITypeInfo_RemoteGetDocumentation_Stub, + ITypeInfo_RemoteGetDllEntry_Stub, + ITypeInfo_GetRefTypeInfo_Stub, + ITypeInfo_LocalAddressOfMember_Stub, + ITypeInfo_RemoteCreateInstance_Stub, + ITypeInfo_GetMops_Stub, + ITypeInfo_RemoteGetContainingTypeLib_Stub, + ITypeInfo_LocalReleaseTypeAttr_Stub, + ITypeInfo_LocalReleaseFuncDesc_Stub, + ITypeInfo_LocalReleaseVarDesc_Stub +}; + +const CInterfaceStubVtbl _ITypeInfoStubVtbl = +{ + { + &IID_ITypeInfo, + 0, + 22, + &ITypeInfo_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeInfo2, ver. 0.0, + GUID={0x00020412,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeKind_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [out] */ TYPEKIND __RPC_FAR *pTypeKind) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 22); + + + + if(!pTypeKind) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[282] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pTypeKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250], + (unsigned char)0 ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1250], + ( void __RPC_FAR * )pTypeKind); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetTypeKind_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + TYPEKIND _M49; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + TYPEKIND __RPC_FAR *pTypeKind; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( TYPEKIND __RPC_FAR * )pTypeKind = 0; + RpcTryFinally + { + pTypeKind = &_M49; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeKind((ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject,pTypeKind); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pTypeKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250] ); + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetTypeFlags_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [out] */ ULONG __RPC_FAR *pTypeFlags) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 23); + + + + if(!pTypeFlags) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0] ); + + *pTypeFlags = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pTypeFlags); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetTypeFlags_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ULONG _M50; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG __RPC_FAR *pTypeFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ULONG __RPC_FAR * )pTypeFlags = 0; + RpcTryFinally + { + pTypeFlags = &_M50; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeFlags((ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject,pTypeFlags); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = *pTypeFlags; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncIndexOfMemId_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [in] */ INVOKEKIND invKind, + /* [out] */ UINT __RPC_FAR *pFuncIndex) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 24); + + + + if(!pFuncIndex) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + NdrSimpleTypeMarshall( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( unsigned char __RPC_FAR * )&invKind, + 14); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[288] ); + + *pFuncIndex = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pFuncIndex); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetFuncIndexOfMemId_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + UINT _M51; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + INVOKEKIND invKind; + MEMBERID memid; + UINT __RPC_FAR *pFuncIndex; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( UINT __RPC_FAR * )pFuncIndex = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[288] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleTypeUnmarshall( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( unsigned char __RPC_FAR * )&invKind, + 14); + pFuncIndex = &_M51; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetFuncIndexOfMemId( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + invKind, + pFuncIndex); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pFuncIndex; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarIndexOfMemId_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [out] */ UINT __RPC_FAR *pVarIndex) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 25); + + + + if(!pVarIndex) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[196] ); + + *pVarIndex = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pVarIndex); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetVarIndexOfMemId_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + UINT _M52; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + MEMBERID memid; + UINT __RPC_FAR *pVarIndex; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( UINT __RPC_FAR * )pVarIndex = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[196] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + pVarIndex = &_M52; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetVarIndexOfMemId( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + pVarIndex); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pVarIndex; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 26); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[298] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M53; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[298] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M53; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetFuncCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 27); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetFuncCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M54; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + UINT index; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M54; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetFuncCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetParamCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT indexFunc, + /* [in] */ UINT indexParam, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 28); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U + 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = indexFunc; + + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = indexParam; + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[320] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetParamCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M55; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + UINT indexFunc; + UINT indexParam; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[320] ); + + indexFunc = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + indexParam = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M55; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetParamCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + indexFunc, + indexParam, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetVarCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 29); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetVarCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M56; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + UINT index; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M56; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetVarCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetImplTypeCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 30); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetImplTypeCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M57; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + UINT index; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[308] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M57; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetImplTypeCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeInfo2_RemoteGetDocumentation2_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ MEMBERID memid, + /* [in] */ LCID lcid, + /* [in] */ DWORD refPtrFlags, + /* [out] */ BSTR __RPC_FAR *pbstrHelpString, + /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext, + /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pbstrHelpString) + { + MIDL_memset( + pbstrHelpString, + 0, + sizeof( BSTR )); + } + if(pbstrHelpStringDll) + { + MIDL_memset( + pbstrHelpStringDll, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 31); + + + + if(!pbstrHelpString) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pdwHelpStringContext) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pbstrHelpStringDll) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++ = memid; + + *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid; + + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = refPtrFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[334] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pdwHelpStringContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pbstrHelpString); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pdwHelpStringContext); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pbstrHelpStringDll); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_RemoteGetDocumentation2_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M58; + DWORD _M59; + BSTR _M60; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + LCID lcid; + MEMBERID memid; + BSTR __RPC_FAR *pbstrHelpString; + BSTR __RPC_FAR *pbstrHelpStringDll; + DWORD __RPC_FAR *pdwHelpStringContext; + DWORD refPtrFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pbstrHelpString = 0; + ( DWORD __RPC_FAR * )pdwHelpStringContext = 0; + ( BSTR __RPC_FAR * )pbstrHelpStringDll = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[334] ); + + memid = *(( MEMBERID __RPC_FAR * )_StubMsg.Buffer)++; + + lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++; + + refPtrFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + pbstrHelpString = &_M58; + MIDL_memset( + pbstrHelpString, + 0, + sizeof( BSTR )); + pdwHelpStringContext = &_M59; + pbstrHelpStringDll = &_M60; + MIDL_memset( + pbstrHelpStringDll, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeInfo2_GetDocumentation2_Stub( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + memid, + lcid, + refPtrFlags, + pbstrHelpString, + pdwHelpStringContext, + pbstrHelpStringDll); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 11U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = *pdwHelpStringContext; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 32); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[354] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetAllCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllCustData((ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject,pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllFuncCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 33); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetAllFuncCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + UINT index; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllFuncCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllParamCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT indexFunc, + /* [in] */ UINT indexParam, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 34); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = indexFunc; + + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = indexParam; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[368] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetAllParamCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + UINT indexFunc; + UINT indexParam; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[368] ); + + indexFunc = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + indexParam = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllParamCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + indexFunc, + indexParam, + pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllVarCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 35); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetAllVarCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + UINT index; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllVarCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeInfo2_GetAllImplTypeCustData_Proxy( + ITypeInfo2 __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 36); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeInfo2_GetAllImplTypeCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + UINT index; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[360] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeInfo2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllImplTypeCustData( + (ITypeInfo2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(37) _ITypeInfo2ProxyVtbl = +{ + { &IID_ITypeInfo2 }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeInfo_GetTypeAttr_Proxy , + ITypeInfo_GetTypeComp_Proxy , + ITypeInfo_GetFuncDesc_Proxy , + ITypeInfo_GetVarDesc_Proxy , + ITypeInfo_GetNames_Proxy , + ITypeInfo_GetRefTypeOfImplType_Proxy , + ITypeInfo_GetImplTypeFlags_Proxy , + ITypeInfo_GetIDsOfNames_Proxy , + ITypeInfo_Invoke_Proxy , + ITypeInfo_GetDocumentation_Proxy , + ITypeInfo_GetDllEntry_Proxy , + ITypeInfo_GetRefTypeInfo_Proxy , + ITypeInfo_AddressOfMember_Proxy , + ITypeInfo_CreateInstance_Proxy , + ITypeInfo_GetMops_Proxy , + ITypeInfo_GetContainingTypeLib_Proxy , + ITypeInfo_ReleaseTypeAttr_Proxy , + ITypeInfo_ReleaseFuncDesc_Proxy , + ITypeInfo_ReleaseVarDesc_Proxy , + ITypeInfo2_GetTypeKind_Proxy , + ITypeInfo2_GetTypeFlags_Proxy , + ITypeInfo2_GetFuncIndexOfMemId_Proxy , + ITypeInfo2_GetVarIndexOfMemId_Proxy , + ITypeInfo2_GetCustData_Proxy , + ITypeInfo2_GetFuncCustData_Proxy , + ITypeInfo2_GetParamCustData_Proxy , + ITypeInfo2_GetVarCustData_Proxy , + ITypeInfo2_GetImplTypeCustData_Proxy , + ITypeInfo2_GetDocumentation2_Proxy , + ITypeInfo2_GetAllCustData_Proxy , + ITypeInfo2_GetAllFuncCustData_Proxy , + ITypeInfo2_GetAllParamCustData_Proxy , + ITypeInfo2_GetAllVarCustData_Proxy , + ITypeInfo2_GetAllImplTypeCustData_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeInfo2_table[] = +{ + ITypeInfo_RemoteGetTypeAttr_Stub, + ITypeInfo_GetTypeComp_Stub, + ITypeInfo_RemoteGetFuncDesc_Stub, + ITypeInfo_RemoteGetVarDesc_Stub, + ITypeInfo_RemoteGetNames_Stub, + ITypeInfo_GetRefTypeOfImplType_Stub, + ITypeInfo_GetImplTypeFlags_Stub, + ITypeInfo_LocalGetIDsOfNames_Stub, + ITypeInfo_LocalInvoke_Stub, + ITypeInfo_RemoteGetDocumentation_Stub, + ITypeInfo_RemoteGetDllEntry_Stub, + ITypeInfo_GetRefTypeInfo_Stub, + ITypeInfo_LocalAddressOfMember_Stub, + ITypeInfo_RemoteCreateInstance_Stub, + ITypeInfo_GetMops_Stub, + ITypeInfo_RemoteGetContainingTypeLib_Stub, + ITypeInfo_LocalReleaseTypeAttr_Stub, + ITypeInfo_LocalReleaseFuncDesc_Stub, + ITypeInfo_LocalReleaseVarDesc_Stub, + ITypeInfo2_GetTypeKind_Stub, + ITypeInfo2_GetTypeFlags_Stub, + ITypeInfo2_GetFuncIndexOfMemId_Stub, + ITypeInfo2_GetVarIndexOfMemId_Stub, + ITypeInfo2_GetCustData_Stub, + ITypeInfo2_GetFuncCustData_Stub, + ITypeInfo2_GetParamCustData_Stub, + ITypeInfo2_GetVarCustData_Stub, + ITypeInfo2_GetImplTypeCustData_Stub, + ITypeInfo2_RemoteGetDocumentation2_Stub, + ITypeInfo2_GetAllCustData_Stub, + ITypeInfo2_GetAllFuncCustData_Stub, + ITypeInfo2_GetAllParamCustData_Stub, + ITypeInfo2_GetAllVarCustData_Stub, + ITypeInfo2_GetAllImplTypeCustData_Stub +}; + +const CInterfaceStubVtbl _ITypeInfo2StubVtbl = +{ + { + &IID_ITypeInfo2, + 0, + 37, + &ITypeInfo2_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeLib, ver. 0.0, + GUID={0x00020402,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetTypeInfoCount_Proxy( + ITypeLib __RPC_FAR * This, + /* [out] */ UINT __RPC_FAR *pcTInfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!pcTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pcTInfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + UINT _M61; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT __RPC_FAR *pcTInfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( UINT __RPC_FAR * )pcTInfo = 0; + RpcTryFinally + { + pcTInfo = &_M61; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_GetTypeInfoCount_Stub((ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject,pcTInfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = *pcTInfo; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfo_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[246] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTInfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_GetTypeInfo_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M62; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[246] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + ppTInfo = &_M62; + _M62 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeInfo( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + index, + ppTInfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[6] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoType_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ UINT index, + /* [out] */ TYPEKIND __RPC_FAR *pTKind) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + if(!pTKind) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( UINT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[378] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pTKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250], + (unsigned char)0 ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1250], + ( void __RPC_FAR * )pTKind); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_GetTypeInfoType_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + TYPEKIND _M63; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + UINT index; + TYPEKIND __RPC_FAR *pTKind; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( TYPEKIND __RPC_FAR * )pTKind = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[378] ); + + index = *(( UINT __RPC_FAR * )_StubMsg.Buffer)++; + + pTKind = &_M63; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeInfoType( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + index, + pTKind); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pTKind, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1250] ); + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeInfoOfGuid_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ REFGUID guid, + /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTinfo) + { + MIDL_memset( + ppTinfo, + 0, + sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppTinfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[386] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTinfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[6], + ( void __RPC_FAR * )ppTinfo); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_GetTypeInfoOfGuid_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeInfo __RPC_FAR *_M64; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTinfo; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTinfo = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[386] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + ppTinfo = &_M64; + _M64 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeInfoOfGuid( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + guid, + ppTinfo); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTinfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTinfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[6] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTinfo, + &__MIDL_TypeFormatString.Format[6] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetLibAttr_Proxy( + ITypeLib __RPC_FAR * This, + /* [out] */ LPTLIBATTR __RPC_FAR *ppTLibAttr, + /* [out] */ CLEANLOCALSTORAGE __RPC_FAR *pDummy) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTLibAttr) + { + *ppTLibAttr = 0; + } + if(pDummy) + { + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 7); + + + + if(!ppTLibAttr) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pDummy) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[396] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTLibAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1804], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1838], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1804], + ( void __RPC_FAR * )ppTLibAttr); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1832], + ( void __RPC_FAR * )pDummy); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + LPTLIBATTR _M65; + CLEANLOCALSTORAGE _M66; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CLEANLOCALSTORAGE __RPC_FAR *pDummy; + LPTLIBATTR __RPC_FAR *ppTLibAttr; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPTLIBATTR __RPC_FAR * )ppTLibAttr = 0; + ( CLEANLOCALSTORAGE __RPC_FAR * )pDummy = 0; + RpcTryFinally + { + ppTLibAttr = &_M65; + _M65 = 0; + pDummy = &_M66; + MIDL_memset( + pDummy, + 0, + sizeof( CLEANLOCALSTORAGE )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_GetLibAttr_Stub( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + ppTLibAttr, + pDummy); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 7U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTLibAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1804] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTLibAttr, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1804] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pDummy, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1838] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTLibAttr, + &__MIDL_TypeFormatString.Format[1804] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pDummy, + &__MIDL_TypeFormatString.Format[1832] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeLib_GetTypeComp_Proxy( + ITypeLib __RPC_FAR * This, + /* [out] */ ITypeComp __RPC_FAR *__RPC_FAR *ppTComp) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTComp) + { + MIDL_memset( + ppTComp, + 0, + sizeof( ITypeComp __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 8); + + + + if(!ppTComp) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[152] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1540], + ( void __RPC_FAR * )ppTComp); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_GetTypeComp_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ITypeComp __RPC_FAR *_M67; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ITypeComp __RPC_FAR *__RPC_FAR *ppTComp; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ITypeComp __RPC_FAR *__RPC_FAR * )ppTComp = 0; + RpcTryFinally + { + ppTComp = &_M67; + _M67 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetTypeComp((ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject,ppTComp); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1540] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTComp, + &__MIDL_TypeFormatString.Format[1540] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetDocumentation_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ INT index, + /* [in] */ DWORD refPtrFlags, + /* [out] */ BSTR __RPC_FAR *pBstrName, + /* [out] */ BSTR __RPC_FAR *pBstrDocString, + /* [out] */ DWORD __RPC_FAR *pdwHelpContext, + /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrName) + { + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + } + if(pBstrDocString) + { + MIDL_memset( + pBstrDocString, + 0, + sizeof( BSTR )); + } + if(pBstrHelpFile) + { + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 9); + + + + if(!pBstrName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrDocString) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pdwHelpContext) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrHelpFile) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( INT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = refPtrFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[204] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pdwHelpContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrName); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrDocString); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pdwHelpContext); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrHelpFile); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M68; + BSTR _M69; + DWORD _M70; + BSTR _M71; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + INT index; + BSTR __RPC_FAR *pBstrDocString; + BSTR __RPC_FAR *pBstrHelpFile; + BSTR __RPC_FAR *pBstrName; + DWORD __RPC_FAR *pdwHelpContext; + DWORD refPtrFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrName = 0; + ( BSTR __RPC_FAR * )pBstrDocString = 0; + ( DWORD __RPC_FAR * )pdwHelpContext = 0; + ( BSTR __RPC_FAR * )pBstrHelpFile = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[204] ); + + index = *(( INT __RPC_FAR * )_StubMsg.Buffer)++; + + refPtrFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + pBstrName = &_M68; + MIDL_memset( + pBstrName, + 0, + sizeof( BSTR )); + pBstrDocString = &_M69; + MIDL_memset( + pBstrDocString, + 0, + sizeof( BSTR )); + pdwHelpContext = &_M70; + pBstrHelpFile = &_M71; + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_GetDocumentation_Stub( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + index, + refPtrFlags, + pBstrName, + pBstrDocString, + pdwHelpContext, + pBstrHelpFile); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 15U + 11U + 11U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = *pdwHelpContext; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrName, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDocString, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteIsName_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ LPOLESTR szNameBuf, + /* [in] */ ULONG lHashVal, + /* [out] */ BOOL __RPC_FAR *pfName, + /* [out] */ BSTR __RPC_FAR *pBstrLibName) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrLibName) + { + MIDL_memset( + pBstrLibName, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 10); + + + + if(!szNameBuf) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pfName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrLibName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U + 10U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[406] ); + + *pfName = *(( BOOL __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pfName); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrLibName); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_RemoteIsName_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BOOL _M74; + BSTR _M75; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG lHashVal; + BSTR __RPC_FAR *pBstrLibName; + BOOL __RPC_FAR *pfName; + LPOLESTR szNameBuf; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szNameBuf = 0; + ( BOOL __RPC_FAR * )pfName = 0; + ( BSTR __RPC_FAR * )pBstrLibName = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[406] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + pfName = &_M74; + pBstrLibName = &_M75; + MIDL_memset( + pBstrLibName, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_IsName_Stub( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + szNameBuf, + lHashVal, + pfName, + pBstrLibName); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( BOOL __RPC_FAR * )_StubMsg.Buffer)++ = *pfName; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_RemoteFindName_Proxy( + ITypeLib __RPC_FAR * This, + /* [in] */ LPOLESTR szNameBuf, + /* [in] */ ULONG lHashVal, + /* [length_is][size_is][out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo, + /* [length_is][size_is][out] */ MEMBERID __RPC_FAR *rgMemId, + /* [out][in] */ USHORT __RPC_FAR *pcFound, + /* [out] */ BSTR __RPC_FAR *pBstrLibName) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppTInfo) + { + MIDL_memset( + ppTInfo, + 0, + *pcFound * sizeof( ITypeInfo __RPC_FAR *__RPC_FAR * )); + } + if(pBstrLibName) + { + MIDL_memset( + pBstrLibName, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 11); + + + + if(!szNameBuf) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppTInfo) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!rgMemId) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pcFound) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pBstrLibName) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U + 10U + 4U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = lHashVal; + + *(( USHORT __RPC_FAR * )_StubMsg.Buffer)++ = *pcFound; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[422] ); + + NdrComplexArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1852], + (unsigned char)0 ); + + NdrConformantVaryingArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rgMemId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1874], + (unsigned char)0 ); + + *pcFound = *(( USHORT __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = _StubMsg.MaxCount; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1848], + ( void __RPC_FAR * )ppTInfo); + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = _StubMsg.MaxCount; + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1870], + ( void __RPC_FAR * )rgMemId); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1888], + ( void __RPC_FAR * )pcFound); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrLibName); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_RemoteFindName_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M84; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG lHashVal; + BSTR __RPC_FAR *pBstrLibName; + USHORT __RPC_FAR *pcFound; + ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo; + MEMBERID __RPC_FAR *rgMemId; + LPOLESTR szNameBuf; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szNameBuf = 0; + ( ITypeInfo __RPC_FAR *__RPC_FAR * )ppTInfo = 0; + ( MEMBERID __RPC_FAR * )rgMemId = 0; + ( USHORT __RPC_FAR * )pcFound = 0; + ( BSTR __RPC_FAR * )pBstrLibName = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[422] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szNameBuf, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + lHashVal = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + pcFound = ( USHORT __RPC_FAR * )_StubMsg.Buffer; + _StubMsg.Buffer += sizeof( USHORT ); + + ppTInfo = NdrAllocate(&_StubMsg,*pcFound * 4); + rgMemId = NdrAllocate(&_StubMsg,*pcFound * 4); + pBstrLibName = &_M84; + MIDL_memset( + pBstrLibName, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_FindName_Stub( + (ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject, + szNameBuf, + lHashVal, + ppTInfo, + rgMemId, + pcFound, + pBstrLibName); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 12U + 15U + 4U + 14U + 11U; + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrComplexArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1852] ); + + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrConformantVaryingArrayBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rgMemId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1874] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrComplexArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1852] ); + + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrConformantVaryingArrayMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rgMemId, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1874] ); + + *(( USHORT __RPC_FAR * )_StubMsg.Buffer)++ = *pcFound; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppTInfo, + &__MIDL_TypeFormatString.Format[1848] ); + + _StubMsg.MaxCount = pcFound ? *pcFound : 0; + _StubMsg.Offset = 0; + _StubMsg.ActualCount = pcFound ? *pcFound : 0; + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)rgMemId, + &__MIDL_TypeFormatString.Format[1870] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrLibName, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib_LocalReleaseTLibAttr_Proxy( + ITypeLib __RPC_FAR * This) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 12); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib_ReleaseTLibAttr_Stub((ITypeLib *) ((CStdStubBuffer *)This)->pvServerObject); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(13) _ITypeLibProxyVtbl = +{ + { &IID_ITypeLib }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeLib_GetTypeInfoCount_Proxy , + ITypeLib_GetTypeInfo_Proxy , + ITypeLib_GetTypeInfoType_Proxy , + ITypeLib_GetTypeInfoOfGuid_Proxy , + ITypeLib_GetLibAttr_Proxy , + ITypeLib_GetTypeComp_Proxy , + ITypeLib_GetDocumentation_Proxy , + ITypeLib_IsName_Proxy , + ITypeLib_FindName_Proxy , + ITypeLib_ReleaseTLibAttr_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeLib_table[] = +{ + ITypeLib_RemoteGetTypeInfoCount_Stub, + ITypeLib_GetTypeInfo_Stub, + ITypeLib_GetTypeInfoType_Stub, + ITypeLib_GetTypeInfoOfGuid_Stub, + ITypeLib_RemoteGetLibAttr_Stub, + ITypeLib_GetTypeComp_Stub, + ITypeLib_RemoteGetDocumentation_Stub, + ITypeLib_RemoteIsName_Stub, + ITypeLib_RemoteFindName_Stub, + ITypeLib_LocalReleaseTLibAttr_Stub +}; + +const CInterfaceStubVtbl _ITypeLibStubVtbl = +{ + { + &IID_ITypeLib, + 0, + 13, + &ITypeLib_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeLib2, ver. 0.0, + GUID={0x00020411,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE ITypeLib2_GetCustData_Proxy( + ITypeLib2 __RPC_FAR * This, + /* [in] */ REFGUID guid, + /* [out] */ VARIANT __RPC_FAR *pVarVal) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pVarVal) + { + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 13); + + + + if(!guid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pVarVal) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[298] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1102], + ( void __RPC_FAR * )pVarVal); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib2_GetCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + VARIANT _M85; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID guid = 0; + VARIANT __RPC_FAR *pVarVal; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( VARIANT __RPC_FAR * )pVarVal = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[298] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&guid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + pVarVal = &_M85; + MIDL_memset( + pVarVal, + 0, + sizeof( VARIANT )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetCustData( + (ITypeLib2 *) ((CStdStubBuffer *)This)->pvServerObject, + guid, + pVarVal); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1110] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pVarVal, + &__MIDL_TypeFormatString.Format[1102] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetLibStatistics_Proxy( + ITypeLib2 __RPC_FAR * This, + /* [out] */ ULONG __RPC_FAR *pcUniqueNames, + /* [out] */ ULONG __RPC_FAR *pcchUniqueNames) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 14); + + + + if(!pcUniqueNames) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pcchUniqueNames) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[446] ); + + *pcUniqueNames = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + *pcchUniqueNames = *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pcUniqueNames); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pcchUniqueNames); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib2_RemoteGetLibStatistics_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + ULONG _M86; + ULONG _M87; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ULONG __RPC_FAR *pcUniqueNames; + ULONG __RPC_FAR *pcchUniqueNames; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( ULONG __RPC_FAR * )pcUniqueNames = 0; + ( ULONG __RPC_FAR * )pcchUniqueNames = 0; + RpcTryFinally + { + pcUniqueNames = &_M86; + pcchUniqueNames = &_M87; + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib2_GetLibStatistics_Stub( + (ITypeLib2 *) ((CStdStubBuffer *)This)->pvServerObject, + pcUniqueNames, + pcchUniqueNames); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = *pcUniqueNames; + + *(( ULONG __RPC_FAR * )_StubMsg.Buffer)++ = *pcchUniqueNames; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +/* [call_as] */ HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetDocumentation2_Proxy( + ITypeLib2 __RPC_FAR * This, + /* [in] */ INT index, + /* [in] */ LCID lcid, + /* [in] */ DWORD refPtrFlags, + /* [out] */ BSTR __RPC_FAR *pbstrHelpString, + /* [out] */ DWORD __RPC_FAR *pdwHelpStringContext, + /* [out] */ BSTR __RPC_FAR *pbstrHelpStringDll) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pbstrHelpString) + { + MIDL_memset( + pbstrHelpString, + 0, + sizeof( BSTR )); + } + if(pbstrHelpStringDll) + { + MIDL_memset( + pbstrHelpStringDll, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 15); + + + + if(!pbstrHelpString) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pdwHelpStringContext) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!pbstrHelpStringDll) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 4U + 4U + 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( INT __RPC_FAR * )_StubMsg.Buffer)++ = index; + + *(( LCID __RPC_FAR * )_StubMsg.Buffer)++ = lcid; + + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = refPtrFlags; + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[334] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *pdwHelpStringContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pbstrHelpString); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pdwHelpStringContext); + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pbstrHelpStringDll); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib2_RemoteGetDocumentation2_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M88; + DWORD _M89; + BSTR _M90; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + INT index; + LCID lcid; + BSTR __RPC_FAR *pbstrHelpString; + BSTR __RPC_FAR *pbstrHelpStringDll; + DWORD __RPC_FAR *pdwHelpStringContext; + DWORD refPtrFlags; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pbstrHelpString = 0; + ( DWORD __RPC_FAR * )pdwHelpStringContext = 0; + ( BSTR __RPC_FAR * )pbstrHelpStringDll = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[334] ); + + index = *(( INT __RPC_FAR * )_StubMsg.Buffer)++; + + lcid = *(( LCID __RPC_FAR * )_StubMsg.Buffer)++; + + refPtrFlags = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + pbstrHelpString = &_M88; + MIDL_memset( + pbstrHelpString, + 0, + sizeof( BSTR )); + pdwHelpStringContext = &_M89; + pbstrHelpStringDll = &_M90; + MIDL_memset( + pbstrHelpStringDll, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + + + _RetVal = ITypeLib2_GetDocumentation2_Stub( + (ITypeLib2 *) ((CStdStubBuffer *)This)->pvServerObject, + index, + lcid, + refPtrFlags, + pbstrHelpString, + pdwHelpStringContext, + pbstrHelpStringDll); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U + 11U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = *pdwHelpStringContext; + + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpString, + &__MIDL_TypeFormatString.Format[1708] ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pbstrHelpStringDll, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ITypeLib2_GetAllCustData_Proxy( + ITypeLib2 __RPC_FAR * This, + /* [out] */ CUSTDATA __RPC_FAR *pCustData) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pCustData) + { + MIDL_memset( + pCustData, + 0, + sizeof( CUSTDATA )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 16); + + + + if(!pCustData) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[354] ); + + NdrComplexStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1748], + ( void __RPC_FAR * )pCustData); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeLib2_GetAllCustData_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + CUSTDATA _pCustDataM; + CUSTDATA __RPC_FAR *pCustData; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( CUSTDATA __RPC_FAR * )pCustData = 0; + RpcTryFinally + { + pCustData = &_pCustDataM; + pCustData -> prgCustData = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeLib2*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetAllCustData((ITypeLib2 *) ((CStdStubBuffer *)This)->pvServerObject,pCustData); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrComplexStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrComplexStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pCustData, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1788] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pCustData, + &__MIDL_TypeFormatString.Format[1748] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(17) _ITypeLib2ProxyVtbl = +{ + { &IID_ITypeLib2 }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeLib_GetTypeInfoCount_Proxy , + ITypeLib_GetTypeInfo_Proxy , + ITypeLib_GetTypeInfoType_Proxy , + ITypeLib_GetTypeInfoOfGuid_Proxy , + ITypeLib_GetLibAttr_Proxy , + ITypeLib_GetTypeComp_Proxy , + ITypeLib_GetDocumentation_Proxy , + ITypeLib_IsName_Proxy , + ITypeLib_FindName_Proxy , + ITypeLib_ReleaseTLibAttr_Proxy , + ITypeLib2_GetCustData_Proxy , + ITypeLib2_GetLibStatistics_Proxy , + ITypeLib2_GetDocumentation2_Proxy , + ITypeLib2_GetAllCustData_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeLib2_table[] = +{ + ITypeLib_RemoteGetTypeInfoCount_Stub, + ITypeLib_GetTypeInfo_Stub, + ITypeLib_GetTypeInfoType_Stub, + ITypeLib_GetTypeInfoOfGuid_Stub, + ITypeLib_RemoteGetLibAttr_Stub, + ITypeLib_GetTypeComp_Stub, + ITypeLib_RemoteGetDocumentation_Stub, + ITypeLib_RemoteIsName_Stub, + ITypeLib_RemoteFindName_Stub, + ITypeLib_LocalReleaseTLibAttr_Stub, + ITypeLib2_GetCustData_Stub, + ITypeLib2_RemoteGetLibStatistics_Stub, + ITypeLib2_RemoteGetDocumentation2_Stub, + ITypeLib2_GetAllCustData_Stub +}; + +const CInterfaceStubVtbl _ITypeLib2StubVtbl = +{ + { + &IID_ITypeLib2, + 0, + 17, + &ITypeLib2_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeChangeEvents, ver. 0.0, + GUID={0x00020410,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: IErrorInfo, ver. 0.0, + GUID={0x1CF2B120,0x547D,0x101B,{0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE IErrorInfo_GetGUID_Proxy( + IErrorInfo __RPC_FAR * This, + /* [out] */ GUID __RPC_FAR *pGUID) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pGUID) + { + MIDL_memset( + pGUID, + 0, + sizeof( IID )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!pGUID) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[456] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pGUID, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1892], + ( void __RPC_FAR * )pGUID); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IErrorInfo_GetGUID_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + IID _pGUIDM; + GUID __RPC_FAR *pGUID; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( GUID __RPC_FAR * )pGUID = 0; + RpcTryFinally + { + pGUID = &_pGUIDM; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetGUID((IErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,pGUID); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 11U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pGUID, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pGUID, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IErrorInfo_GetSource_Proxy( + IErrorInfo __RPC_FAR * This, + /* [out] */ BSTR __RPC_FAR *pBstrSource) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrSource) + { + MIDL_memset( + pBstrSource, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!pBstrSource) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[462] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrSource); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IErrorInfo_GetSource_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M91; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + BSTR __RPC_FAR *pBstrSource; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrSource = 0; + RpcTryFinally + { + pBstrSource = &_M91; + MIDL_memset( + pBstrSource, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetSource((IErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,pBstrSource); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrSource, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IErrorInfo_GetDescription_Proxy( + IErrorInfo __RPC_FAR * This, + /* [out] */ BSTR __RPC_FAR *pBstrDescription) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrDescription) + { + MIDL_memset( + pBstrDescription, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + if(!pBstrDescription) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[462] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrDescription); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IErrorInfo_GetDescription_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M92; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + BSTR __RPC_FAR *pBstrDescription; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrDescription = 0; + RpcTryFinally + { + pBstrDescription = &_M92; + MIDL_memset( + pBstrDescription, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetDescription((IErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,pBstrDescription); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrDescription, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpFile_Proxy( + IErrorInfo __RPC_FAR * This, + /* [out] */ BSTR __RPC_FAR *pBstrHelpFile) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(pBstrHelpFile) + { + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!pBstrHelpFile) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[462] ); + + NdrUserMarshalUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1708], + ( void __RPC_FAR * )pBstrHelpFile); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IErrorInfo_GetHelpFile_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + BSTR _M93; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + BSTR __RPC_FAR *pBstrHelpFile; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( BSTR __RPC_FAR * )pBstrHelpFile = 0; + RpcTryFinally + { + pBstrHelpFile = &_M93; + MIDL_memset( + pBstrHelpFile, + 0, + sizeof( BSTR )); + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetHelpFile((IErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,pBstrHelpFile); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 8U + 11U; + NdrUserMarshalBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + NdrUserMarshalMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1128] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pBstrHelpFile, + &__MIDL_TypeFormatString.Format[1708] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE IErrorInfo_GetHelpContext_Proxy( + IErrorInfo __RPC_FAR * This, + /* [out] */ DWORD __RPC_FAR *pdwHelpContext) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 7); + + + + if(!pdwHelpContext) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrProxyGetBuffer(This, &_StubMsg); + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0] ); + + *pdwHelpContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[2], + ( void __RPC_FAR * )pdwHelpContext); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB IErrorInfo_GetHelpContext_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + DWORD _M94; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + DWORD __RPC_FAR *pdwHelpContext; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( DWORD __RPC_FAR * )pdwHelpContext = 0; + RpcTryFinally + { + pdwHelpContext = &_M94; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((IErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> GetHelpContext((IErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,pdwHelpContext); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U + 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = *pdwHelpContext; + + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(8) _IErrorInfoProxyVtbl = +{ + { &IID_IErrorInfo }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + IErrorInfo_GetGUID_Proxy , + IErrorInfo_GetSource_Proxy , + IErrorInfo_GetDescription_Proxy , + IErrorInfo_GetHelpFile_Proxy , + IErrorInfo_GetHelpContext_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION IErrorInfo_table[] = +{ + IErrorInfo_GetGUID_Stub, + IErrorInfo_GetSource_Stub, + IErrorInfo_GetDescription_Stub, + IErrorInfo_GetHelpFile_Stub, + IErrorInfo_GetHelpContext_Stub +}; + +const CInterfaceStubVtbl _IErrorInfoStubVtbl = +{ + { + &IID_IErrorInfo, + 0, + 8, + &IErrorInfo_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ICreateErrorInfo, ver. 0.0, + GUID={0x22F03340,0x547D,0x101B,{0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetGUID_Proxy( + ICreateErrorInfo __RPC_FAR * This, + /* [in] */ REFGUID rguid) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!rguid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)rguid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)rguid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[468] ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ICreateErrorInfo_SetGUID_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFGUID rguid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[468] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&rguid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ICreateErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> SetGUID((ICreateErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,rguid); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetSource_Proxy( + ICreateErrorInfo __RPC_FAR * This, + /* [in] */ LPOLESTR szSource) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 4); + + + + if(!szSource) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ICreateErrorInfo_SetSource_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + LPOLESTR szSource; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szSource = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szSource, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ICreateErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> SetSource((ICreateErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,szSource); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetDescription_Proxy( + ICreateErrorInfo __RPC_FAR * This, + /* [in] */ LPOLESTR szDescription) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 5); + + + + if(!szDescription) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ICreateErrorInfo_SetDescription_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + LPOLESTR szDescription; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szDescription = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szDescription, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ICreateErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> SetDescription((ICreateErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,szDescription); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpFile_Proxy( + ICreateErrorInfo __RPC_FAR * This, + /* [in] */ LPOLESTR szHelpFile) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 6); + + + + if(!szHelpFile) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 12U; + NdrConformantStringBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)szHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrConformantStringMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)szHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ICreateErrorInfo_SetHelpFile_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + LPOLESTR szHelpFile; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + ( LPOLESTR )szHelpFile = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[474] ); + + NdrConformantStringUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&szHelpFile, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1248], + (unsigned char)0 ); + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ICreateErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> SetHelpFile((ICreateErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,szHelpFile); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + + +HRESULT STDMETHODCALLTYPE ICreateErrorInfo_SetHelpContext_Proxy( + ICreateErrorInfo __RPC_FAR * This, + /* [in] */ DWORD dwHelpContext) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 7); + + + + RpcTryFinally + { + + _StubMsg.BufferLength = 4U; + NdrProxyGetBuffer(This, &_StubMsg); + *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++ = dwHelpContext; + + 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)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ICreateErrorInfo_SetHelpContext_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + DWORD dwHelpContext; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[84] ); + + dwHelpContext = *(( DWORD __RPC_FAR * )_StubMsg.Buffer)++; + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ICreateErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> SetHelpContext((ICreateErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,dwHelpContext); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(8) _ICreateErrorInfoProxyVtbl = +{ + { &IID_ICreateErrorInfo }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ICreateErrorInfo_SetGUID_Proxy , + ICreateErrorInfo_SetSource_Proxy , + ICreateErrorInfo_SetDescription_Proxy , + ICreateErrorInfo_SetHelpFile_Proxy , + ICreateErrorInfo_SetHelpContext_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ICreateErrorInfo_table[] = +{ + ICreateErrorInfo_SetGUID_Stub, + ICreateErrorInfo_SetSource_Stub, + ICreateErrorInfo_SetDescription_Stub, + ICreateErrorInfo_SetHelpFile_Stub, + ICreateErrorInfo_SetHelpContext_Stub +}; + +const CInterfaceStubVtbl _ICreateErrorInfoStubVtbl = +{ + { + &IID_ICreateErrorInfo, + 0, + 8, + &ICreateErrorInfo_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ISupportErrorInfo, ver. 0.0, + GUID={0xDF0B3D60,0x548F,0x101B,{0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy( + ISupportErrorInfo __RPC_FAR * This, + /* [in] */ REFIID riid) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!riid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U; + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[468] ); + + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ISupportErrorInfo_InterfaceSupportsErrorInfo_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + REFIID riid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[468] ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ISupportErrorInfo*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> InterfaceSupportsErrorInfo((ISupportErrorInfo *) ((CStdStubBuffer *)This)->pvServerObject,riid); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 4U; + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +const CINTERFACE_PROXY_VTABLE(4) _ISupportErrorInfoProxyVtbl = +{ + { &IID_ISupportErrorInfo }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ISupportErrorInfo_table[] = +{ + ISupportErrorInfo_InterfaceSupportsErrorInfo_Stub +}; + +const CInterfaceStubVtbl _ISupportErrorInfoStubVtbl = +{ + { + &IID_ISupportErrorInfo, + 0, + 4, + &ISupportErrorInfo_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeFactory, ver. 0.0, + GUID={0x0000002E,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +HRESULT STDMETHODCALLTYPE ITypeFactory_CreateFromTypeInfo_Proxy( + ITypeFactory __RPC_FAR * This, + /* [in] */ ITypeInfo __RPC_FAR *pTypeInfo, + /* [in] */ REFIID riid, + /* [iid_is][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppv) +{ + + HRESULT _RetVal; + + RPC_MESSAGE _RpcMessage; + + MIDL_STUB_MESSAGE _StubMsg; + + if(ppv) + { + MIDL_memset( + ppv, + 0, + sizeof( IUnknown __RPC_FAR *__RPC_FAR * )); + } + RpcTryExcept + { + NdrProxyInitialize( + ( void __RPC_FAR * )This, + ( PRPC_MESSAGE )&_RpcMessage, + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PMIDL_STUB_DESC )&Object_StubDesc, + 3); + + + + if(!riid) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + if(!ppv) + { + RpcRaiseException(RPC_X_NULL_REF_POINTER); + } + RpcTryFinally + { + + _StubMsg.BufferLength = 0U + 0U; + NdrInterfacePointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)pTypeInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[10] ); + + NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxyGetBuffer(This, &_StubMsg); + NdrInterfacePointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)pTypeInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[10] ); + + NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38] ); + + NdrProxySendReceive(This, &_StubMsg); + + if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[480] ); + + NdrPointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&ppv, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1896], + (unsigned char)0 ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + _RetVal = *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++; + + } + RpcFinally + { + NdrProxyFreeBuffer(This, &_StubMsg); + + } + RpcEndFinally + + } + RpcExcept(_StubMsg.dwStubPhase != PROXY_SENDRECEIVE) + { + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrClearOutParameters( + ( PMIDL_STUB_MESSAGE )&_StubMsg, + ( PFORMAT_STRING )&__MIDL_TypeFormatString.Format[1896], + ( void __RPC_FAR * )ppv); + _RetVal = NdrProxyErrorHandler(RpcExceptionCode()); + } + RpcEndExcept + return _RetVal; +} + +void __RPC_STUB ITypeFactory_CreateFromTypeInfo_Stub( + IRpcStubBuffer *This, + IRpcChannelBuffer *_pRpcChannelBuffer, + PRPC_MESSAGE _pRpcMessage, + DWORD *_pdwStubPhase) +{ + IUnknown __RPC_FAR *__RPC_FAR *_M101; + HRESULT _RetVal; + MIDL_STUB_MESSAGE _StubMsg; + ITypeInfo __RPC_FAR *pTypeInfo; + IUnknown __RPC_FAR *__RPC_FAR *ppv; + REFIID riid = 0; + +NdrStubInitialize( + _pRpcMessage, + &_StubMsg, + &Object_StubDesc, + _pRpcChannelBuffer); + pTypeInfo = 0; + ( IUnknown __RPC_FAR *__RPC_FAR * )ppv = 0; + RpcTryFinally + { + if ( (_pRpcMessage->DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION ) + NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[480] ); + + NdrInterfacePointerUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&pTypeInfo, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[10], + (unsigned char)0 ); + + NdrSimpleStructUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR * __RPC_FAR *)&riid, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[38], + (unsigned char)0 ); + + ppv = (void *)&_M101; + _M101 = 0; + + *_pdwStubPhase = STUB_CALL_SERVER; + _RetVal = (((ITypeFactory*) ((CStdStubBuffer *)This)->pvServerObject)->lpVtbl) -> CreateFromTypeInfo( + (ITypeFactory *) ((CStdStubBuffer *)This)->pvServerObject, + pTypeInfo, + riid, + ppv); + + *_pdwStubPhase = STUB_MARSHAL; + + _StubMsg.BufferLength = 0U + 4U; + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg, + (unsigned char __RPC_FAR *)ppv, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1896] ); + + _StubMsg.BufferLength += 16; + + NdrStubGetBuffer(This, _pRpcChannelBuffer, &_StubMsg); + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg, + (unsigned char __RPC_FAR *)ppv, + (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[1896] ); + + _StubMsg.Buffer = (unsigned char __RPC_FAR *)(((long)_StubMsg.Buffer + 3) & ~ 0x3); + *(( HRESULT __RPC_FAR * )_StubMsg.Buffer)++ = _RetVal; + + } + RpcFinally + { + NdrInterfacePointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)pTypeInfo, + &__MIDL_TypeFormatString.Format[10] ); + + _StubMsg.MaxCount = (unsigned long) ( riid ); + + NdrPointerFree( &_StubMsg, + (unsigned char __RPC_FAR *)ppv, + &__MIDL_TypeFormatString.Format[1896] ); + + } + RpcEndFinally + _pRpcMessage->BufferLength = + (unsigned int)((long)_StubMsg.Buffer - (long)_pRpcMessage->Buffer); + +} + +extern const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[3]; + +static const MIDL_STUB_DESC Object_StubDesc = + { + 0, + NdrOleAllocate, + NdrOleFree, + { 0 }, + 0, + 0, + 0, + 0, + __MIDL_TypeFormatString.Format, + 1, /* -error bounds_check flag */ + 0x20000, /* Ndr library version */ + 0, + 0x50100a4, /* MIDL Version 5.1.164 */ + 0, + UserMarshalRoutines, + 0, /* notify & notify_flag routine table */ + 1, /* Flags */ + 0, /* Reserved3 */ + 0, /* Reserved4 */ + 0 /* Reserved5 */ + }; + +const CINTERFACE_PROXY_VTABLE(4) _ITypeFactoryProxyVtbl = +{ + { &IID_ITypeFactory }, + { + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + ITypeFactory_CreateFromTypeInfo_Proxy + } +}; + + +static const PRPC_STUB_FUNCTION ITypeFactory_table[] = +{ + ITypeFactory_CreateFromTypeInfo_Stub +}; + +const CInterfaceStubVtbl _ITypeFactoryStubVtbl = +{ + { + &IID_ITypeFactory, + 0, + 4, + &ITypeFactory_table[-3] + }, + { CStdStubBuffer_METHODS } +}; + + +/* Object interface: ITypeMarshal, ver. 0.0, + GUID={0x0000002D,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: IRecordInfo, ver. 0.0, + GUID={0x0000002F,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: ICreateTypeInfo, ver. 0.0, + GUID={0x00020405,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: ICreateTypeInfo2, ver. 0.0, + GUID={0x0002040E,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: ICreateTypeLib, ver. 0.0, + GUID={0x00020406,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + + +/* Object interface: ICreateTypeLib2, ver. 0.0, + GUID={0x0002040F,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */ + +static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[3] = + { + { + (USER_MARSHAL_SIZING_ROUTINE)VARIANT_UserSize, + (USER_MARSHAL_MARSHALLING_ROUTINE)VARIANT_UserMarshal, + (USER_MARSHAL_UNMARSHALLING_ROUTINE)VARIANT_UserUnmarshal, + (USER_MARSHAL_FREEING_ROUTINE)VARIANT_UserFree + }, + { + (USER_MARSHAL_SIZING_ROUTINE)BSTR_UserSize, + (USER_MARSHAL_MARSHALLING_ROUTINE)BSTR_UserMarshal, + (USER_MARSHAL_UNMARSHALLING_ROUTINE)BSTR_UserUnmarshal, + (USER_MARSHAL_FREEING_ROUTINE)BSTR_UserFree + }, + { + (USER_MARSHAL_SIZING_ROUTINE)CLEANLOCALSTORAGE_UserSize, + (USER_MARSHAL_MARSHALLING_ROUTINE)CLEANLOCALSTORAGE_UserMarshal, + (USER_MARSHAL_UNMARSHALLING_ROUTINE)CLEANLOCALSTORAGE_UserUnmarshal, + (USER_MARSHAL_FREEING_ROUTINE)CLEANLOCALSTORAGE_UserFree + } + + }; + + +#if !defined(__RPC_WIN32__) +#error Invalid build platform for this stub. +#endif + +#if !(TARGET_IS_NT40_OR_LATER) +#error You need a Windows NT 4.0 or later to run this stub because it uses these features: +#error [wire_marshal] or [user_marshal] attribute. +#error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems. +#error This app will die there with the RPC_X_WRONG_STUB_VERSION error. +#endif + + +static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString = + { + 0, + { + + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 2 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 4 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 6 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 8 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 10 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 12 */ NdrFcShort( 0x6 ), /* Type Offset=6 */ +/* 14 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 16 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 18 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 20 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 22 */ NdrFcShort( 0x32 ), /* Type Offset=50 */ +/* 24 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 26 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 28 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 30 */ NdrFcShort( 0x54 ), /* Type Offset=84 */ +/* 32 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 34 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 36 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 38 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 40 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 42 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 44 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 46 */ NdrFcShort( 0x62 ), /* Type Offset=98 */ +/* 48 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 50 */ NdrFcShort( 0x44e ), /* Type Offset=1102 */ +/* 52 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 54 */ NdrFcShort( 0x460 ), /* Type Offset=1120 */ +/* 56 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 58 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 60 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 62 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 64 */ NdrFcShort( 0x48e ), /* Type Offset=1166 */ +/* 66 */ + 0x50, /* FC_IN_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 68 */ NdrFcShort( 0x49c ), /* Type Offset=1180 */ +/* 70 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 72 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 74 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 76 */ NdrFcShort( 0x4b2 ), /* Type Offset=1202 */ +/* 78 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 80 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 82 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 84 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 86 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 88 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 90 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 92 */ NdrFcShort( 0x4c8 ), /* Type Offset=1224 */ +/* 94 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 96 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 98 */ NdrFcShort( 0x4de ), /* Type Offset=1246 */ +/* 100 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 102 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x6, /* FC_SHORT */ +/* 104 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 106 */ NdrFcShort( 0x6 ), /* Type Offset=6 */ +/* 108 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 110 */ NdrFcShort( 0x4e2 ), /* Type Offset=1250 */ +/* 112 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 114 */ NdrFcShort( 0x4e6 ), /* Type Offset=1254 */ +/* 116 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 118 */ NdrFcShort( 0x5b8 ), /* Type Offset=1464 */ +/* 120 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 122 */ NdrFcShort( 0x604 ), /* Type Offset=1540 */ +/* 124 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 126 */ NdrFcShort( 0x61a ), /* Type Offset=1562 */ +/* 128 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 130 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 132 */ NdrFcShort( 0x4de ), /* Type Offset=1246 */ +/* 134 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 136 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 138 */ NdrFcShort( 0x6 ), /* Type Offset=6 */ +/* 140 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 142 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 144 */ NdrFcShort( 0x62a ), /* Type Offset=1578 */ +/* 146 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 148 */ NdrFcShort( 0x666 ), /* Type Offset=1638 */ +/* 150 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 152 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 154 */ NdrFcShort( 0x604 ), /* Type Offset=1540 */ +/* 156 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 158 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 160 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 162 */ NdrFcShort( 0x4e6 ), /* Type Offset=1254 */ +/* 164 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 166 */ NdrFcShort( 0x676 ), /* Type Offset=1654 */ +/* 168 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 170 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 172 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 174 */ NdrFcShort( 0x5b8 ), /* Type Offset=1464 */ +/* 176 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 178 */ NdrFcShort( 0x686 ), /* Type Offset=1670 */ +/* 180 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 182 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 184 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 186 */ NdrFcShort( 0x696 ), /* Type Offset=1686 */ +/* 188 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 190 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 192 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 194 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 196 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 198 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 200 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 202 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 204 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 206 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 208 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 210 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 212 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 214 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 216 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 218 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 220 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 222 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 224 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 226 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 228 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0xe, /* FC_ENUM32 */ +/* 230 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 232 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 234 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 236 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 238 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 240 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 242 */ NdrFcShort( 0x6b0 ), /* Type Offset=1712 */ +/* 244 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 246 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 248 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 250 */ NdrFcShort( 0x6 ), /* Type Offset=6 */ +/* 252 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 254 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 256 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 258 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 260 */ NdrFcShort( 0x6b4 ), /* Type Offset=1716 */ +/* 262 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 264 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 266 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 268 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 270 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 272 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 274 */ NdrFcShort( 0x6be ), /* Type Offset=1726 */ +/* 276 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 278 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 280 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 282 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 284 */ NdrFcShort( 0x4e2 ), /* Type Offset=1250 */ +/* 286 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 288 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 290 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0xe, /* FC_ENUM32 */ +/* 292 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 294 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 296 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 298 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 300 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 302 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 304 */ NdrFcShort( 0x44e ), /* Type Offset=1102 */ +/* 306 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 308 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 310 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 312 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 314 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 316 */ NdrFcShort( 0x44e ), /* Type Offset=1102 */ +/* 318 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 320 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 322 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 324 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 326 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 328 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 330 */ NdrFcShort( 0x44e ), /* Type Offset=1102 */ +/* 332 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 334 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 336 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 338 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 340 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 342 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 344 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 346 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 348 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 350 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 352 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 354 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 356 */ NdrFcShort( 0x6d4 ), /* Type Offset=1748 */ +/* 358 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 360 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 362 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 364 */ NdrFcShort( 0x6d4 ), /* Type Offset=1748 */ +/* 366 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 368 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 370 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 372 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 374 */ NdrFcShort( 0x6d4 ), /* Type Offset=1748 */ +/* 376 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 378 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 380 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 382 */ NdrFcShort( 0x4e2 ), /* Type Offset=1250 */ +/* 384 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 386 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 388 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 390 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 392 */ NdrFcShort( 0x6 ), /* Type Offset=6 */ +/* 394 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 396 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 398 */ NdrFcShort( 0x70c ), /* Type Offset=1804 */ +/* 400 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 402 */ NdrFcShort( 0x728 ), /* Type Offset=1832 */ +/* 404 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 406 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 408 */ NdrFcShort( 0x4de ), /* Type Offset=1246 */ +/* 410 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 412 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 414 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 416 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 418 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 420 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 422 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 424 */ NdrFcShort( 0x4de ), /* Type Offset=1246 */ +/* 426 */ 0x4e, /* FC_IN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 428 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 430 */ NdrFcShort( 0x738 ), /* Type Offset=1848 */ +/* 432 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 434 */ NdrFcShort( 0x74e ), /* Type Offset=1870 */ +/* 436 */ + 0x50, /* FC_IN_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 438 */ NdrFcShort( 0x760 ), /* Type Offset=1888 */ +/* 440 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 442 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 444 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 446 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 448 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 450 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 452 */ NdrFcShort( 0x2 ), /* Type Offset=2 */ +/* 454 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 456 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 458 */ NdrFcShort( 0x764 ), /* Type Offset=1892 */ +/* 460 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 462 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 464 */ NdrFcShort( 0x6ac ), /* Type Offset=1708 */ +/* 466 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 468 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 470 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 472 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 474 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 476 */ NdrFcShort( 0x4de ), /* Type Offset=1246 */ +/* 478 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ +/* 480 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 482 */ NdrFcShort( 0xa ), /* Type Offset=10 */ +/* 484 */ + 0x4d, /* FC_IN_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 486 */ NdrFcShort( 0x1c ), /* Type Offset=28 */ +/* 488 */ + 0x51, /* FC_OUT_PARAM */ +#ifndef _ALPHA_ + 0x1, /* x86, MIPS & PPC Stack size = 1 */ +#else + 0x2, /* Alpha Stack size = 2 */ +#endif +/* 490 */ NdrFcShort( 0x768 ), /* Type Offset=1896 */ +/* 492 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */ + 0x8, /* FC_LONG */ + + 0x0 + } + }; + +static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString = + { + 0, + { + NdrFcShort( 0x0 ), /* 0 */ +/* 2 */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 4 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 6 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 8 */ NdrFcShort( 0x2 ), /* Offset= 2 (10) */ +/* 10 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 12 */ NdrFcLong( 0x20401 ), /* 132097 */ +/* 16 */ NdrFcShort( 0x0 ), /* 0 */ +/* 18 */ NdrFcShort( 0x0 ), /* 0 */ +/* 20 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 22 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 24 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 26 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 28 */ + 0x11, 0x0, /* FC_RP */ +/* 30 */ NdrFcShort( 0x8 ), /* Offset= 8 (38) */ +/* 32 */ + 0x1d, /* FC_SMFARRAY */ + 0x0, /* 0 */ +/* 34 */ NdrFcShort( 0x8 ), /* 8 */ +/* 36 */ 0x2, /* FC_CHAR */ + 0x5b, /* FC_END */ +/* 38 */ + 0x15, /* FC_STRUCT */ + 0x3, /* 3 */ +/* 40 */ NdrFcShort( 0x10 ), /* 16 */ +/* 42 */ 0x8, /* FC_LONG */ + 0x6, /* FC_SHORT */ +/* 44 */ 0x6, /* FC_SHORT */ + 0x4c, /* FC_EMBEDDED_COMPLEX */ +/* 46 */ 0x0, /* 0 */ + NdrFcShort( 0xfffffff1 ), /* Offset= -15 (32) */ + 0x5b, /* FC_END */ +/* 50 */ + 0x11, 0x0, /* FC_RP */ +/* 52 */ NdrFcShort( 0x2 ), /* Offset= 2 (54) */ +/* 54 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 56 */ NdrFcShort( 0x4 ), /* 4 */ +/* 58 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 60 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */ +#else + NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */ +#endif +/* 62 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 64 */ + 0x48, /* FC_VARIABLE_REPEAT */ + 0x49, /* FC_FIXED_OFFSET */ +/* 66 */ NdrFcShort( 0x4 ), /* 4 */ +/* 68 */ NdrFcShort( 0x0 ), /* 0 */ +/* 70 */ NdrFcShort( 0x1 ), /* 1 */ +/* 72 */ NdrFcShort( 0x0 ), /* 0 */ +/* 74 */ NdrFcShort( 0x0 ), /* 0 */ +/* 76 */ 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 78 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 80 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 82 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 84 */ + 0x11, 0x0, /* FC_RP */ +/* 86 */ NdrFcShort( 0x2 ), /* Offset= 2 (88) */ +/* 88 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 90 */ NdrFcShort( 0x4 ), /* 4 */ +/* 92 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 94 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */ +#else + NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */ +#endif +/* 96 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 98 */ + 0x11, 0x0, /* FC_RP */ +/* 100 */ NdrFcShort( 0x3d4 ), /* Offset= 980 (1080) */ +/* 102 */ + 0x12, 0x0, /* FC_UP */ +/* 104 */ NdrFcShort( 0x396 ), /* Offset= 918 (1022) */ +/* 106 */ + 0x2b, /* FC_NON_ENCAPSULATED_UNION */ + 0x7, /* FC_USHORT */ +/* 108 */ 0x7, /* Corr desc: FC_USHORT */ + 0x0, /* */ +/* 110 */ NdrFcShort( 0xfff8 ), /* -8 */ +/* 112 */ NdrFcShort( 0x2 ), /* Offset= 2 (114) */ +/* 114 */ NdrFcShort( 0x10 ), /* 16 */ +/* 116 */ NdrFcShort( 0x2b ), /* 43 */ +/* 118 */ NdrFcLong( 0x0 ), /* 0 */ +/* 122 */ NdrFcShort( 0x0 ), /* Offset= 0 (122) */ +/* 124 */ NdrFcLong( 0x1 ), /* 1 */ +/* 128 */ NdrFcShort( 0x0 ), /* Offset= 0 (128) */ +/* 130 */ NdrFcLong( 0x10 ), /* 16 */ +/* 134 */ NdrFcShort( 0x8002 ), /* Simple arm type: FC_CHAR */ +/* 136 */ NdrFcLong( 0x12 ), /* 18 */ +/* 140 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */ +/* 142 */ NdrFcLong( 0x13 ), /* 19 */ +/* 146 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 148 */ NdrFcLong( 0x16 ), /* 22 */ +/* 152 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 154 */ NdrFcLong( 0x17 ), /* 23 */ +/* 158 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 160 */ NdrFcLong( 0x11 ), /* 17 */ +/* 164 */ NdrFcShort( 0x8002 ), /* Simple arm type: FC_CHAR */ +/* 166 */ NdrFcLong( 0x2 ), /* 2 */ +/* 170 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */ +/* 172 */ NdrFcLong( 0x3 ), /* 3 */ +/* 176 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 178 */ NdrFcLong( 0x4 ), /* 4 */ +/* 182 */ NdrFcShort( 0x800a ), /* Simple arm type: FC_FLOAT */ +/* 184 */ NdrFcLong( 0x5 ), /* 5 */ +/* 188 */ NdrFcShort( 0x800c ), /* Simple arm type: FC_DOUBLE */ +/* 190 */ NdrFcLong( 0xb ), /* 11 */ +/* 194 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */ +/* 196 */ NdrFcLong( 0xa ), /* 10 */ +/* 200 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 202 */ NdrFcLong( 0x7 ), /* 7 */ +/* 206 */ NdrFcShort( 0x800c ), /* Simple arm type: FC_DOUBLE */ +/* 208 */ NdrFcLong( 0x8 ), /* 8 */ +/* 212 */ NdrFcShort( 0xa6 ), /* Offset= 166 (378) */ +/* 214 */ NdrFcLong( 0x6 ), /* 6 */ +/* 218 */ NdrFcShort( 0xb8 ), /* Offset= 184 (402) */ +/* 220 */ NdrFcLong( 0xe ), /* 14 */ +/* 224 */ NdrFcShort( 0xb8 ), /* Offset= 184 (408) */ +/* 226 */ NdrFcLong( 0xd ), /* 13 */ +/* 230 */ NdrFcShort( 0xbe ), /* Offset= 190 (420) */ +/* 232 */ NdrFcLong( 0x9 ), /* 9 */ +/* 236 */ NdrFcShort( 0xca ), /* Offset= 202 (438) */ +/* 238 */ NdrFcLong( 0x2000 ), /* 8192 */ +/* 242 */ NdrFcShort( 0xd6 ), /* Offset= 214 (456) */ +/* 244 */ NdrFcLong( 0x4010 ), /* 16400 */ +/* 248 */ NdrFcShort( 0x2ce ), /* Offset= 718 (966) */ +/* 250 */ NdrFcLong( 0x4012 ), /* 16402 */ +/* 254 */ NdrFcShort( 0x2cc ), /* Offset= 716 (970) */ +/* 256 */ NdrFcLong( 0x4013 ), /* 16403 */ +/* 260 */ NdrFcShort( 0x2ca ), /* Offset= 714 (974) */ +/* 262 */ NdrFcLong( 0x4016 ), /* 16406 */ +/* 266 */ NdrFcShort( 0x2c4 ), /* Offset= 708 (974) */ +/* 268 */ NdrFcLong( 0x4017 ), /* 16407 */ +/* 272 */ NdrFcShort( 0x2be ), /* Offset= 702 (974) */ +/* 274 */ NdrFcLong( 0x4011 ), /* 16401 */ +/* 278 */ NdrFcShort( 0x2b0 ), /* Offset= 688 (966) */ +/* 280 */ NdrFcLong( 0x4002 ), /* 16386 */ +/* 284 */ NdrFcShort( 0x2ae ), /* Offset= 686 (970) */ +/* 286 */ NdrFcLong( 0x4003 ), /* 16387 */ +/* 290 */ NdrFcShort( 0x2ac ), /* Offset= 684 (974) */ +/* 292 */ NdrFcLong( 0x4004 ), /* 16388 */ +/* 296 */ NdrFcShort( 0x2aa ), /* Offset= 682 (978) */ +/* 298 */ NdrFcLong( 0x4005 ), /* 16389 */ +/* 302 */ NdrFcShort( 0x2a8 ), /* Offset= 680 (982) */ +/* 304 */ NdrFcLong( 0x400b ), /* 16395 */ +/* 308 */ NdrFcShort( 0x296 ), /* Offset= 662 (970) */ +/* 310 */ NdrFcLong( 0x400a ), /* 16394 */ +/* 314 */ NdrFcShort( 0x294 ), /* Offset= 660 (974) */ +/* 316 */ NdrFcLong( 0x4007 ), /* 16391 */ +/* 320 */ NdrFcShort( 0x296 ), /* Offset= 662 (982) */ +/* 322 */ NdrFcLong( 0x4008 ), /* 16392 */ +/* 326 */ NdrFcShort( 0x294 ), /* Offset= 660 (986) */ +/* 328 */ NdrFcLong( 0x400c ), /* 16396 */ +/* 332 */ NdrFcShort( 0x292 ), /* Offset= 658 (990) */ +/* 334 */ NdrFcLong( 0x4006 ), /* 16390 */ +/* 338 */ NdrFcShort( 0x294 ), /* Offset= 660 (998) */ +/* 340 */ NdrFcLong( 0x400e ), /* 16398 */ +/* 344 */ NdrFcShort( 0x292 ), /* Offset= 658 (1002) */ +/* 346 */ NdrFcLong( 0x400d ), /* 16397 */ +/* 350 */ NdrFcShort( 0x290 ), /* Offset= 656 (1006) */ +/* 352 */ NdrFcLong( 0x4009 ), /* 16393 */ +/* 356 */ NdrFcShort( 0x28e ), /* Offset= 654 (1010) */ +/* 358 */ NdrFcLong( 0x6000 ), /* 24576 */ +/* 362 */ NdrFcShort( 0x28c ), /* Offset= 652 (1014) */ +/* 364 */ NdrFcLong( 0x24 ), /* 36 */ +/* 368 */ NdrFcShort( 0x28a ), /* Offset= 650 (1018) */ +/* 370 */ NdrFcLong( 0x4024 ), /* 16420 */ +/* 374 */ NdrFcShort( 0x284 ), /* Offset= 644 (1018) */ +/* 376 */ NdrFcShort( 0xffffffff ), /* Offset= -1 (375) */ +/* 378 */ + 0x12, 0x0, /* FC_UP */ +/* 380 */ NdrFcShort( 0xc ), /* Offset= 12 (392) */ +/* 382 */ + 0x1b, /* FC_CARRAY */ + 0x1, /* 1 */ +/* 384 */ NdrFcShort( 0x2 ), /* 2 */ +/* 386 */ 0x9, /* Corr desc: FC_ULONG */ + 0x0, /* */ +/* 388 */ NdrFcShort( 0xfffc ), /* -4 */ +/* 390 */ 0x6, /* FC_SHORT */ + 0x5b, /* FC_END */ +/* 392 */ + 0x17, /* FC_CSTRUCT */ + 0x3, /* 3 */ +/* 394 */ NdrFcShort( 0x8 ), /* 8 */ +/* 396 */ NdrFcShort( 0xfffffff2 ), /* Offset= -14 (382) */ +/* 398 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 400 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 402 */ + 0x15, /* FC_STRUCT */ + 0x7, /* 7 */ +/* 404 */ NdrFcShort( 0x8 ), /* 8 */ +/* 406 */ 0xb, /* FC_HYPER */ + 0x5b, /* FC_END */ +/* 408 */ + 0x15, /* FC_STRUCT */ + 0x7, /* 7 */ +/* 410 */ NdrFcShort( 0x10 ), /* 16 */ +/* 412 */ 0x6, /* FC_SHORT */ + 0x2, /* FC_CHAR */ +/* 414 */ 0x2, /* FC_CHAR */ + 0x38, /* FC_ALIGNM4 */ +/* 416 */ 0x8, /* FC_LONG */ + 0x39, /* FC_ALIGNM8 */ +/* 418 */ 0xb, /* FC_HYPER */ + 0x5b, /* FC_END */ +/* 420 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 422 */ NdrFcLong( 0x0 ), /* 0 */ +/* 426 */ NdrFcShort( 0x0 ), /* 0 */ +/* 428 */ NdrFcShort( 0x0 ), /* 0 */ +/* 430 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 432 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 434 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 436 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 438 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 440 */ NdrFcLong( 0x20400 ), /* 132096 */ +/* 444 */ NdrFcShort( 0x0 ), /* 0 */ +/* 446 */ NdrFcShort( 0x0 ), /* 0 */ +/* 448 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 450 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 452 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 454 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 456 */ + 0x12, 0x0, /* FC_UP */ +/* 458 */ NdrFcShort( 0x1ea ), /* Offset= 490 (948) */ +/* 460 */ + 0x2a, /* FC_ENCAPSULATED_UNION */ + 0x49, /* 73 */ +/* 462 */ NdrFcShort( 0x18 ), /* 24 */ +/* 464 */ NdrFcShort( 0xa ), /* 10 */ +/* 466 */ NdrFcLong( 0x8 ), /* 8 */ +/* 470 */ NdrFcShort( 0x58 ), /* Offset= 88 (558) */ +/* 472 */ NdrFcLong( 0xd ), /* 13 */ +/* 476 */ NdrFcShort( 0x78 ), /* Offset= 120 (596) */ +/* 478 */ NdrFcLong( 0x9 ), /* 9 */ +/* 482 */ NdrFcShort( 0x94 ), /* Offset= 148 (630) */ +/* 484 */ NdrFcLong( 0xc ), /* 12 */ +/* 488 */ NdrFcShort( 0xbc ), /* Offset= 188 (676) */ +/* 490 */ NdrFcLong( 0x24 ), /* 36 */ +/* 494 */ NdrFcShort( 0x114 ), /* Offset= 276 (770) */ +/* 496 */ NdrFcLong( 0x800d ), /* 32781 */ +/* 500 */ NdrFcShort( 0x11e ), /* Offset= 286 (786) */ +/* 502 */ NdrFcLong( 0x10 ), /* 16 */ +/* 506 */ NdrFcShort( 0x136 ), /* Offset= 310 (816) */ +/* 508 */ NdrFcLong( 0x2 ), /* 2 */ +/* 512 */ NdrFcShort( 0x14e ), /* Offset= 334 (846) */ +/* 514 */ NdrFcLong( 0x3 ), /* 3 */ +/* 518 */ NdrFcShort( 0x166 ), /* Offset= 358 (876) */ +/* 520 */ NdrFcLong( 0x14 ), /* 20 */ +/* 524 */ NdrFcShort( 0x17e ), /* Offset= 382 (906) */ +/* 526 */ NdrFcShort( 0xffffffff ), /* Offset= -1 (525) */ +/* 528 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 530 */ NdrFcShort( 0x4 ), /* 4 */ +/* 532 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 534 */ NdrFcShort( 0x0 ), /* 0 */ +/* 536 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 538 */ + 0x48, /* FC_VARIABLE_REPEAT */ + 0x49, /* FC_FIXED_OFFSET */ +/* 540 */ NdrFcShort( 0x4 ), /* 4 */ +/* 542 */ NdrFcShort( 0x0 ), /* 0 */ +/* 544 */ NdrFcShort( 0x1 ), /* 1 */ +/* 546 */ NdrFcShort( 0x0 ), /* 0 */ +/* 548 */ NdrFcShort( 0x0 ), /* 0 */ +/* 550 */ 0x12, 0x0, /* FC_UP */ +/* 552 */ NdrFcShort( 0xffffff60 ), /* Offset= -160 (392) */ +/* 554 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 556 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 558 */ + 0x16, /* FC_PSTRUCT */ + 0x3, /* 3 */ +/* 560 */ NdrFcShort( 0x8 ), /* 8 */ +/* 562 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 564 */ + 0x46, /* FC_NO_REPEAT */ + 0x5c, /* FC_PAD */ +/* 566 */ NdrFcShort( 0x4 ), /* 4 */ +/* 568 */ NdrFcShort( 0x4 ), /* 4 */ +/* 570 */ 0x11, 0x0, /* FC_RP */ +/* 572 */ NdrFcShort( 0xffffffd4 ), /* Offset= -44 (528) */ +/* 574 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 576 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 578 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 580 */ NdrFcShort( 0x0 ), /* 0 */ +/* 582 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 584 */ NdrFcShort( 0x0 ), /* 0 */ +/* 586 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 590 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 592 */ NdrFcShort( 0xffffff54 ), /* Offset= -172 (420) */ +/* 594 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 596 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 598 */ NdrFcShort( 0x8 ), /* 8 */ +/* 600 */ NdrFcShort( 0x0 ), /* 0 */ +/* 602 */ NdrFcShort( 0x6 ), /* Offset= 6 (608) */ +/* 604 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 606 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 608 */ + 0x11, 0x0, /* FC_RP */ +/* 610 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (578) */ +/* 612 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 614 */ NdrFcShort( 0x0 ), /* 0 */ +/* 616 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 618 */ NdrFcShort( 0x0 ), /* 0 */ +/* 620 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 624 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 626 */ NdrFcShort( 0xffffff44 ), /* Offset= -188 (438) */ +/* 628 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 630 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 632 */ NdrFcShort( 0x8 ), /* 8 */ +/* 634 */ NdrFcShort( 0x0 ), /* 0 */ +/* 636 */ NdrFcShort( 0x6 ), /* Offset= 6 (642) */ +/* 638 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 640 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 642 */ + 0x11, 0x0, /* FC_RP */ +/* 644 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (612) */ +/* 646 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 648 */ NdrFcShort( 0x4 ), /* 4 */ +/* 650 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 652 */ NdrFcShort( 0x0 ), /* 0 */ +/* 654 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 656 */ + 0x48, /* FC_VARIABLE_REPEAT */ + 0x49, /* FC_FIXED_OFFSET */ +/* 658 */ NdrFcShort( 0x4 ), /* 4 */ +/* 660 */ NdrFcShort( 0x0 ), /* 0 */ +/* 662 */ NdrFcShort( 0x1 ), /* 1 */ +/* 664 */ NdrFcShort( 0x0 ), /* 0 */ +/* 666 */ NdrFcShort( 0x0 ), /* 0 */ +/* 668 */ 0x12, 0x0, /* FC_UP */ +/* 670 */ NdrFcShort( 0x160 ), /* Offset= 352 (1022) */ +/* 672 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 674 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 676 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 678 */ NdrFcShort( 0x8 ), /* 8 */ +/* 680 */ NdrFcShort( 0x0 ), /* 0 */ +/* 682 */ NdrFcShort( 0x6 ), /* Offset= 6 (688) */ +/* 684 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 686 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 688 */ + 0x11, 0x0, /* FC_RP */ +/* 690 */ NdrFcShort( 0xffffffd4 ), /* Offset= -44 (646) */ +/* 692 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 694 */ NdrFcLong( 0x2f ), /* 47 */ +/* 698 */ NdrFcShort( 0x0 ), /* 0 */ +/* 700 */ NdrFcShort( 0x0 ), /* 0 */ +/* 702 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 704 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 706 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 708 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 710 */ + 0x1b, /* FC_CARRAY */ + 0x0, /* 0 */ +/* 712 */ NdrFcShort( 0x1 ), /* 1 */ +/* 714 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 716 */ NdrFcShort( 0x4 ), /* 4 */ +/* 718 */ 0x1, /* FC_BYTE */ + 0x5b, /* FC_END */ +/* 720 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 722 */ NdrFcShort( 0x10 ), /* 16 */ +/* 724 */ NdrFcShort( 0x0 ), /* 0 */ +/* 726 */ NdrFcShort( 0xa ), /* Offset= 10 (736) */ +/* 728 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 730 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 732 */ NdrFcShort( 0xffffffd8 ), /* Offset= -40 (692) */ +/* 734 */ 0x36, /* FC_POINTER */ + 0x5b, /* FC_END */ +/* 736 */ + 0x12, 0x0, /* FC_UP */ +/* 738 */ NdrFcShort( 0xffffffe4 ), /* Offset= -28 (710) */ +/* 740 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 742 */ NdrFcShort( 0x4 ), /* 4 */ +/* 744 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 746 */ NdrFcShort( 0x0 ), /* 0 */ +/* 748 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 750 */ + 0x48, /* FC_VARIABLE_REPEAT */ + 0x49, /* FC_FIXED_OFFSET */ +/* 752 */ NdrFcShort( 0x4 ), /* 4 */ +/* 754 */ NdrFcShort( 0x0 ), /* 0 */ +/* 756 */ NdrFcShort( 0x1 ), /* 1 */ +/* 758 */ NdrFcShort( 0x0 ), /* 0 */ +/* 760 */ NdrFcShort( 0x0 ), /* 0 */ +/* 762 */ 0x12, 0x0, /* FC_UP */ +/* 764 */ NdrFcShort( 0xffffffd4 ), /* Offset= -44 (720) */ +/* 766 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 768 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 770 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 772 */ NdrFcShort( 0x8 ), /* 8 */ +/* 774 */ NdrFcShort( 0x0 ), /* 0 */ +/* 776 */ NdrFcShort( 0x6 ), /* Offset= 6 (782) */ +/* 778 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 780 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 782 */ + 0x11, 0x0, /* FC_RP */ +/* 784 */ NdrFcShort( 0xffffffd4 ), /* Offset= -44 (740) */ +/* 786 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 788 */ NdrFcShort( 0x18 ), /* 24 */ +/* 790 */ NdrFcShort( 0x0 ), /* 0 */ +/* 792 */ NdrFcShort( 0xa ), /* Offset= 10 (802) */ +/* 794 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 796 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 798 */ NdrFcShort( 0xfffffd08 ), /* Offset= -760 (38) */ +/* 800 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 802 */ + 0x11, 0x0, /* FC_RP */ +/* 804 */ NdrFcShort( 0xffffff1e ), /* Offset= -226 (578) */ +/* 806 */ + 0x1b, /* FC_CARRAY */ + 0x0, /* 0 */ +/* 808 */ NdrFcShort( 0x1 ), /* 1 */ +/* 810 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 812 */ NdrFcShort( 0x0 ), /* 0 */ +/* 814 */ 0x1, /* FC_BYTE */ + 0x5b, /* FC_END */ +/* 816 */ + 0x16, /* FC_PSTRUCT */ + 0x3, /* 3 */ +/* 818 */ NdrFcShort( 0x8 ), /* 8 */ +/* 820 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 822 */ + 0x46, /* FC_NO_REPEAT */ + 0x5c, /* FC_PAD */ +/* 824 */ NdrFcShort( 0x4 ), /* 4 */ +/* 826 */ NdrFcShort( 0x4 ), /* 4 */ +/* 828 */ 0x12, 0x0, /* FC_UP */ +/* 830 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (806) */ +/* 832 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 834 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 836 */ + 0x1b, /* FC_CARRAY */ + 0x1, /* 1 */ +/* 838 */ NdrFcShort( 0x2 ), /* 2 */ +/* 840 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 842 */ NdrFcShort( 0x0 ), /* 0 */ +/* 844 */ 0x6, /* FC_SHORT */ + 0x5b, /* FC_END */ +/* 846 */ + 0x16, /* FC_PSTRUCT */ + 0x3, /* 3 */ +/* 848 */ NdrFcShort( 0x8 ), /* 8 */ +/* 850 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 852 */ + 0x46, /* FC_NO_REPEAT */ + 0x5c, /* FC_PAD */ +/* 854 */ NdrFcShort( 0x4 ), /* 4 */ +/* 856 */ NdrFcShort( 0x4 ), /* 4 */ +/* 858 */ 0x12, 0x0, /* FC_UP */ +/* 860 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (836) */ +/* 862 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 864 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 866 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 868 */ NdrFcShort( 0x4 ), /* 4 */ +/* 870 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 872 */ NdrFcShort( 0x0 ), /* 0 */ +/* 874 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 876 */ + 0x16, /* FC_PSTRUCT */ + 0x3, /* 3 */ +/* 878 */ NdrFcShort( 0x8 ), /* 8 */ +/* 880 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 882 */ + 0x46, /* FC_NO_REPEAT */ + 0x5c, /* FC_PAD */ +/* 884 */ NdrFcShort( 0x4 ), /* 4 */ +/* 886 */ NdrFcShort( 0x4 ), /* 4 */ +/* 888 */ 0x12, 0x0, /* FC_UP */ +/* 890 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (866) */ +/* 892 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 894 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 896 */ + 0x1b, /* FC_CARRAY */ + 0x7, /* 7 */ +/* 898 */ NdrFcShort( 0x8 ), /* 8 */ +/* 900 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 902 */ NdrFcShort( 0x0 ), /* 0 */ +/* 904 */ 0xb, /* FC_HYPER */ + 0x5b, /* FC_END */ +/* 906 */ + 0x16, /* FC_PSTRUCT */ + 0x3, /* 3 */ +/* 908 */ NdrFcShort( 0x8 ), /* 8 */ +/* 910 */ + 0x4b, /* FC_PP */ + 0x5c, /* FC_PAD */ +/* 912 */ + 0x46, /* FC_NO_REPEAT */ + 0x5c, /* FC_PAD */ +/* 914 */ NdrFcShort( 0x4 ), /* 4 */ +/* 916 */ NdrFcShort( 0x4 ), /* 4 */ +/* 918 */ 0x12, 0x0, /* FC_UP */ +/* 920 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (896) */ +/* 922 */ + 0x5b, /* FC_END */ + + 0x8, /* FC_LONG */ +/* 924 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 926 */ + 0x15, /* FC_STRUCT */ + 0x3, /* 3 */ +/* 928 */ NdrFcShort( 0x8 ), /* 8 */ +/* 930 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 932 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 934 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 936 */ NdrFcShort( 0x8 ), /* 8 */ +/* 938 */ 0x7, /* Corr desc: FC_USHORT */ + 0x0, /* */ +/* 940 */ NdrFcShort( 0xffd8 ), /* -40 */ +/* 942 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 944 */ NdrFcShort( 0xffffffee ), /* Offset= -18 (926) */ +/* 946 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 948 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 950 */ NdrFcShort( 0x28 ), /* 40 */ +/* 952 */ NdrFcShort( 0xffffffee ), /* Offset= -18 (934) */ +/* 954 */ NdrFcShort( 0x0 ), /* Offset= 0 (954) */ +/* 956 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 958 */ 0x38, /* FC_ALIGNM4 */ + 0x8, /* FC_LONG */ +/* 960 */ 0x8, /* FC_LONG */ + 0x4c, /* FC_EMBEDDED_COMPLEX */ +/* 962 */ 0x0, /* 0 */ + NdrFcShort( 0xfffffe09 ), /* Offset= -503 (460) */ + 0x5b, /* FC_END */ +/* 966 */ + 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 968 */ 0x2, /* FC_CHAR */ + 0x5c, /* FC_PAD */ +/* 970 */ + 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 972 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 974 */ + 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 976 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 978 */ + 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 980 */ 0xa, /* FC_FLOAT */ + 0x5c, /* FC_PAD */ +/* 982 */ + 0x12, 0x8, /* FC_UP [simple_pointer] */ +/* 984 */ 0xc, /* FC_DOUBLE */ + 0x5c, /* FC_PAD */ +/* 986 */ + 0x12, 0x10, /* FC_UP */ +/* 988 */ NdrFcShort( 0xfffffd9e ), /* Offset= -610 (378) */ +/* 990 */ + 0x12, 0x10, /* FC_UP */ +/* 992 */ NdrFcShort( 0x2 ), /* Offset= 2 (994) */ +/* 994 */ + 0x12, 0x0, /* FC_UP */ +/* 996 */ NdrFcShort( 0xfffffc1c ), /* Offset= -996 (0) */ +/* 998 */ + 0x12, 0x0, /* FC_UP */ +/* 1000 */ NdrFcShort( 0xfffffdaa ), /* Offset= -598 (402) */ +/* 1002 */ + 0x12, 0x0, /* FC_UP */ +/* 1004 */ NdrFcShort( 0xfffffdac ), /* Offset= -596 (408) */ +/* 1006 */ + 0x12, 0x10, /* FC_UP */ +/* 1008 */ NdrFcShort( 0xfffffdb4 ), /* Offset= -588 (420) */ +/* 1010 */ + 0x12, 0x10, /* FC_UP */ +/* 1012 */ NdrFcShort( 0xfffffdc2 ), /* Offset= -574 (438) */ +/* 1014 */ + 0x12, 0x10, /* FC_UP */ +/* 1016 */ NdrFcShort( 0xfffffdd0 ), /* Offset= -560 (456) */ +/* 1018 */ + 0x12, 0x0, /* FC_UP */ +/* 1020 */ NdrFcShort( 0xfffffed4 ), /* Offset= -300 (720) */ +/* 1022 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x7, /* 7 */ +/* 1024 */ NdrFcShort( 0x20 ), /* 32 */ +/* 1026 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1028 */ NdrFcShort( 0x0 ), /* Offset= 0 (1028) */ +/* 1030 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 1032 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1034 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1036 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1038 */ NdrFcShort( 0xfffffc5c ), /* Offset= -932 (106) */ +/* 1040 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1042 */ 0xb4, /* FC_USER_MARSHAL */ + 0x83, /* 131 */ +/* 1044 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1046 */ NdrFcShort( 0x10 ), /* 16 */ +/* 1048 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1050 */ NdrFcShort( 0xfffffc4c ), /* Offset= -948 (102) */ +/* 1052 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1054 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1056 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 1058 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1060 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 1064 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1066 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (1042) */ +/* 1068 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1070 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 1072 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1074 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 1076 */ NdrFcShort( 0xc ), /* 12 */ +/* 1078 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 1080 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1082 */ NdrFcShort( 0x10 ), /* 16 */ +/* 1084 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1086 */ NdrFcShort( 0x8 ), /* Offset= 8 (1094) */ +/* 1088 */ 0x36, /* FC_POINTER */ + 0x36, /* FC_POINTER */ +/* 1090 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 1092 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1094 */ + 0x12, 0x0, /* FC_UP */ +/* 1096 */ NdrFcShort( 0xffffffd4 ), /* Offset= -44 (1052) */ +/* 1098 */ + 0x12, 0x0, /* FC_UP */ +/* 1100 */ NdrFcShort( 0xffffffe2 ), /* Offset= -30 (1070) */ +/* 1102 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1104 */ NdrFcShort( 0x6 ), /* Offset= 6 (1110) */ +/* 1106 */ + 0x13, 0x0, /* FC_OP */ +/* 1108 */ NdrFcShort( 0xffffffaa ), /* Offset= -86 (1022) */ +/* 1110 */ 0xb4, /* FC_USER_MARSHAL */ + 0x83, /* 131 */ +/* 1112 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1114 */ NdrFcShort( 0x10 ), /* 16 */ +/* 1116 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1118 */ NdrFcShort( 0xfffffff4 ), /* Offset= -12 (1106) */ +/* 1120 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1122 */ NdrFcShort( 0x10 ), /* Offset= 16 (1138) */ +/* 1124 */ + 0x13, 0x0, /* FC_OP */ +/* 1126 */ NdrFcShort( 0xfffffd22 ), /* Offset= -734 (392) */ +/* 1128 */ 0xb4, /* FC_USER_MARSHAL */ + 0x83, /* 131 */ +/* 1130 */ NdrFcShort( 0x1 ), /* 1 */ +/* 1132 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1134 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1136 */ NdrFcShort( 0xfffffff4 ), /* Offset= -12 (1124) */ +/* 1138 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1140 */ NdrFcShort( 0x20 ), /* 32 */ +/* 1142 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1144 */ NdrFcShort( 0x0 ), /* Offset= 0 (1144) */ +/* 1146 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1148 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1150 */ NdrFcShort( 0xffffffea ), /* Offset= -22 (1128) */ +/* 1152 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1154 */ NdrFcShort( 0xffffffe6 ), /* Offset= -26 (1128) */ +/* 1156 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1158 */ NdrFcShort( 0xffffffe2 ), /* Offset= -30 (1128) */ +/* 1160 */ 0x38, /* FC_ALIGNM4 */ + 0x8, /* FC_LONG */ +/* 1162 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 1164 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 1166 */ + 0x11, 0x0, /* FC_RP */ +/* 1168 */ NdrFcShort( 0x2 ), /* Offset= 2 (1170) */ +/* 1170 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 1172 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1174 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1176 */ NdrFcShort( 0x24 ), /* x86, MIPS, PPC Stack size/offset = 36 */ +#else + NdrFcShort( 0x48 ), /* Alpha Stack size/offset = 72 */ +#endif +/* 1178 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 1180 */ + 0x11, 0x0, /* FC_RP */ +/* 1182 */ NdrFcShort( 0x2 ), /* Offset= 2 (1184) */ +/* 1184 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1186 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1188 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1190 */ NdrFcShort( 0x24 ), /* x86, MIPS, PPC Stack size/offset = 36 */ +#else + NdrFcShort( 0x48 ), /* Alpha Stack size/offset = 72 */ +#endif +/* 1192 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 1196 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1198 */ NdrFcShort( 0xffffffa8 ), /* Offset= -88 (1110) */ +/* 1200 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1202 */ + 0x11, 0x0, /* FC_RP */ +/* 1204 */ NdrFcShort( 0x2 ), /* Offset= 2 (1206) */ +/* 1206 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1208 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1210 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1212 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */ +#else + NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */ +#endif +/* 1214 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1216 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */ +#else + NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */ +#endif +/* 1218 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1220 */ NdrFcShort( 0xffffff92 ), /* Offset= -110 (1110) */ +/* 1222 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1224 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1226 */ NdrFcShort( 0x2 ), /* Offset= 2 (1228) */ +/* 1228 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1230 */ NdrFcLong( 0x20404 ), /* 132100 */ +/* 1234 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1236 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1238 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 1240 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1242 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1244 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 1246 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1248 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 1250 */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 1252 */ 0xe, /* FC_ENUM32 */ + 0x5c, /* FC_PAD */ +/* 1254 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1256 */ NdrFcShort( 0x2 ), /* Offset= 2 (1258) */ +/* 1258 */ + 0x13, 0x0, /* FC_OP */ +/* 1260 */ NdrFcShort( 0xaa ), /* Offset= 170 (1430) */ +/* 1262 */ + 0x2b, /* FC_NON_ENCAPSULATED_UNION */ + 0x7, /* FC_USHORT */ +/* 1264 */ 0x7, /* Corr desc: FC_USHORT */ + 0x0, /* */ +/* 1266 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1268 */ NdrFcShort( 0x2 ), /* Offset= 2 (1270) */ +/* 1270 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1272 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1274 */ NdrFcLong( 0x1a ), /* 26 */ +/* 1278 */ NdrFcShort( 0x16 ), /* Offset= 22 (1300) */ +/* 1280 */ NdrFcLong( 0x1b ), /* 27 */ +/* 1284 */ NdrFcShort( 0x10 ), /* Offset= 16 (1300) */ +/* 1286 */ NdrFcLong( 0x1c ), /* 28 */ +/* 1290 */ NdrFcShort( 0xe ), /* Offset= 14 (1304) */ +/* 1292 */ NdrFcLong( 0x1d ), /* 29 */ +/* 1296 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 1298 */ NdrFcShort( 0x0 ), /* Offset= 0 (1298) */ +/* 1300 */ + 0x13, 0x0, /* FC_OP */ +/* 1302 */ NdrFcShort( 0x24 ), /* Offset= 36 (1338) */ +/* 1304 */ + 0x13, 0x0, /* FC_OP */ +/* 1306 */ NdrFcShort( 0x10 ), /* Offset= 16 (1322) */ +/* 1308 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 1310 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1312 */ 0x7, /* Corr desc: FC_USHORT */ + 0x0, /* */ +/* 1314 */ NdrFcShort( 0xfffc ), /* -4 */ +/* 1316 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1318 */ NdrFcShort( 0xfffffe78 ), /* Offset= -392 (926) */ +/* 1320 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1322 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1324 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1326 */ NdrFcShort( 0xffffffee ), /* Offset= -18 (1308) */ +/* 1328 */ NdrFcShort( 0x0 ), /* Offset= 0 (1328) */ +/* 1330 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1332 */ NdrFcShort( 0x6 ), /* Offset= 6 (1338) */ +/* 1334 */ 0x6, /* FC_SHORT */ + 0x3e, /* FC_STRUCTPAD2 */ +/* 1336 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1338 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1340 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1342 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1344 */ NdrFcShort( 0x0 ), /* Offset= 0 (1344) */ +/* 1346 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1348 */ NdrFcShort( 0xffffffaa ), /* Offset= -86 (1262) */ +/* 1350 */ 0x6, /* FC_SHORT */ + 0x3e, /* FC_STRUCTPAD2 */ +/* 1352 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1354 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1356 */ NdrFcShort( 0x18 ), /* 24 */ +/* 1358 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1360 */ NdrFcShort( 0x0 ), /* Offset= 0 (1360) */ +/* 1362 */ 0x8, /* FC_LONG */ + 0x4c, /* FC_EMBEDDED_COMPLEX */ +/* 1364 */ 0x4, /* 4 */ + NdrFcShort( 0xffffff01 ), /* Offset= -255 (1110) */ + 0x5b, /* FC_END */ +/* 1368 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1370 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1372 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1374 */ NdrFcShort( 0x6 ), /* Offset= 6 (1380) */ +/* 1376 */ 0x36, /* FC_POINTER */ + 0x6, /* FC_SHORT */ +/* 1378 */ 0x3e, /* FC_STRUCTPAD2 */ + 0x5b, /* FC_END */ +/* 1380 */ + 0x13, 0x0, /* FC_OP */ +/* 1382 */ NdrFcShort( 0xffffffe4 ), /* Offset= -28 (1354) */ +/* 1384 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1386 */ NdrFcShort( 0x10 ), /* 16 */ +/* 1388 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1390 */ NdrFcShort( 0x0 ), /* Offset= 0 (1390) */ +/* 1392 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1394 */ NdrFcShort( 0xffffffc8 ), /* Offset= -56 (1338) */ +/* 1396 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1398 */ NdrFcShort( 0xffffffe2 ), /* Offset= -30 (1368) */ +/* 1400 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1402 */ + 0x1b, /* FC_CARRAY */ + 0x3, /* 3 */ +/* 1404 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1406 */ 0x16, /* Corr desc: field pointer, FC_SHORT */ + 0x0, /* */ +/* 1408 */ NdrFcShort( 0x1e ), /* 30 */ +/* 1410 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 1412 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1414 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1416 */ 0x16, /* Corr desc: field pointer, FC_SHORT */ + 0x0, /* */ +/* 1418 */ NdrFcShort( 0x18 ), /* 24 */ +/* 1420 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 1424 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1426 */ NdrFcShort( 0xffffffd6 ), /* Offset= -42 (1384) */ +/* 1428 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1430 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1432 */ NdrFcShort( 0x34 ), /* 52 */ +/* 1434 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1436 */ NdrFcShort( 0x14 ), /* Offset= 20 (1456) */ +/* 1438 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 1440 */ 0x36, /* FC_POINTER */ + 0xe, /* FC_ENUM32 */ +/* 1442 */ 0xe, /* FC_ENUM32 */ + 0xe, /* FC_ENUM32 */ +/* 1444 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1446 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1448 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1450 */ NdrFcShort( 0xffffffbe ), /* Offset= -66 (1384) */ +/* 1452 */ 0x6, /* FC_SHORT */ + 0x3e, /* FC_STRUCTPAD2 */ +/* 1454 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1456 */ + 0x13, 0x0, /* FC_OP */ +/* 1458 */ NdrFcShort( 0xffffffc8 ), /* Offset= -56 (1402) */ +/* 1460 */ + 0x13, 0x0, /* FC_OP */ +/* 1462 */ NdrFcShort( 0xffffffce ), /* Offset= -50 (1412) */ +/* 1464 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1466 */ NdrFcShort( 0x2 ), /* Offset= 2 (1468) */ +/* 1468 */ + 0x13, 0x0, /* FC_OP */ +/* 1470 */ NdrFcShort( 0x2c ), /* Offset= 44 (1514) */ +/* 1472 */ + 0x2b, /* FC_NON_ENCAPSULATED_UNION */ + 0x8, /* FC_LONG */ +/* 1474 */ 0x8, /* Corr desc: FC_LONG */ + 0x0, /* */ +/* 1476 */ NdrFcShort( 0x18 ), /* 24 */ +/* 1478 */ NdrFcShort( 0x2 ), /* Offset= 2 (1480) */ +/* 1480 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1482 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1484 */ NdrFcLong( 0x0 ), /* 0 */ +/* 1488 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 1490 */ NdrFcLong( 0x3 ), /* 3 */ +/* 1494 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 1496 */ NdrFcLong( 0x1 ), /* 1 */ +/* 1500 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */ +/* 1502 */ NdrFcLong( 0x2 ), /* 2 */ +/* 1506 */ NdrFcShort( 0x4 ), /* Offset= 4 (1510) */ +/* 1508 */ NdrFcShort( 0xffffffff ), /* Offset= -1 (1507) */ +/* 1510 */ + 0x13, 0x0, /* FC_OP */ +/* 1512 */ NdrFcShort( 0xfffffe6e ), /* Offset= -402 (1110) */ +/* 1514 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1516 */ NdrFcShort( 0x24 ), /* 36 */ +/* 1518 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1520 */ NdrFcShort( 0x10 ), /* Offset= 16 (1536) */ +/* 1522 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 1524 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1526 */ NdrFcShort( 0xffffffca ), /* Offset= -54 (1472) */ +/* 1528 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1530 */ NdrFcShort( 0xffffff6e ), /* Offset= -146 (1384) */ +/* 1532 */ 0x6, /* FC_SHORT */ + 0x38, /* FC_ALIGNM4 */ +/* 1534 */ 0xe, /* FC_ENUM32 */ + 0x5b, /* FC_END */ +/* 1536 */ + 0x13, 0x8, /* FC_OP [simple_pointer] */ +/* 1538 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 1540 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1542 */ NdrFcShort( 0x2 ), /* Offset= 2 (1544) */ +/* 1544 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1546 */ NdrFcLong( 0x20403 ), /* 132099 */ +/* 1550 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1552 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1554 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 1556 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1558 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1560 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 1562 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1564 */ NdrFcShort( 0x4 ), /* Offset= 4 (1568) */ +/* 1566 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 1568 */ 0xb4, /* FC_USER_MARSHAL */ + 0x3, /* 3 */ +/* 1570 */ NdrFcShort( 0x2 ), /* 2 */ +/* 1572 */ NdrFcShort( 0xc ), /* 12 */ +/* 1574 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1576 */ NdrFcShort( 0xfffffff6 ), /* Offset= -10 (1566) */ +/* 1578 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1580 */ NdrFcShort( 0x2 ), /* Offset= 2 (1582) */ +/* 1582 */ + 0x13, 0x0, /* FC_OP */ +/* 1584 */ NdrFcShort( 0xe ), /* Offset= 14 (1598) */ +/* 1586 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1588 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1590 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1592 */ NdrFcShort( 0x0 ), /* Offset= 0 (1592) */ +/* 1594 */ 0x8, /* FC_LONG */ + 0x6, /* FC_SHORT */ +/* 1596 */ 0x3e, /* FC_STRUCTPAD2 */ + 0x5b, /* FC_END */ +/* 1598 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1600 */ NdrFcShort( 0x4c ), /* 76 */ +/* 1602 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1604 */ NdrFcShort( 0x1e ), /* Offset= 30 (1634) */ +/* 1606 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1608 */ NdrFcShort( 0xfffff9de ), /* Offset= -1570 (38) */ +/* 1610 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 1612 */ 0x8, /* FC_LONG */ + 0x8, /* FC_LONG */ +/* 1614 */ 0x36, /* FC_POINTER */ + 0x8, /* FC_LONG */ +/* 1616 */ 0xe, /* FC_ENUM32 */ + 0x6, /* FC_SHORT */ +/* 1618 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1620 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1622 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1624 */ 0x6, /* FC_SHORT */ + 0x4c, /* FC_EMBEDDED_COMPLEX */ +/* 1626 */ 0x0, /* 0 */ + NdrFcShort( 0xfffffedf ), /* Offset= -289 (1338) */ + 0x4c, /* FC_EMBEDDED_COMPLEX */ +/* 1630 */ 0x0, /* 0 */ + NdrFcShort( 0xffffffd3 ), /* Offset= -45 (1586) */ + 0x5b, /* FC_END */ +/* 1634 */ + 0x13, 0x8, /* FC_OP [simple_pointer] */ +/* 1636 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 1638 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1640 */ NdrFcShort( 0x4 ), /* Offset= 4 (1644) */ +/* 1642 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 1644 */ 0xb4, /* FC_USER_MARSHAL */ + 0x3, /* 3 */ +/* 1646 */ NdrFcShort( 0x2 ), /* 2 */ +/* 1648 */ NdrFcShort( 0xc ), /* 12 */ +/* 1650 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1652 */ NdrFcShort( 0xfffffff6 ), /* Offset= -10 (1642) */ +/* 1654 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1656 */ NdrFcShort( 0x4 ), /* Offset= 4 (1660) */ +/* 1658 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 1660 */ 0xb4, /* FC_USER_MARSHAL */ + 0x3, /* 3 */ +/* 1662 */ NdrFcShort( 0x2 ), /* 2 */ +/* 1664 */ NdrFcShort( 0xc ), /* 12 */ +/* 1666 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1668 */ NdrFcShort( 0xfffffff6 ), /* Offset= -10 (1658) */ +/* 1670 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1672 */ NdrFcShort( 0x4 ), /* Offset= 4 (1676) */ +/* 1674 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 1676 */ 0xb4, /* FC_USER_MARSHAL */ + 0x3, /* 3 */ +/* 1678 */ NdrFcShort( 0x2 ), /* 2 */ +/* 1680 */ NdrFcShort( 0xc ), /* 12 */ +/* 1682 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1684 */ NdrFcShort( 0xfffffff6 ), /* Offset= -10 (1674) */ +/* 1686 */ + 0x11, 0x0, /* FC_RP */ +/* 1688 */ NdrFcShort( 0x2 ), /* Offset= 2 (1690) */ +/* 1690 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1692 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1694 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1696 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */ +#else + NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */ +#endif +/* 1698 */ 0x29, /* Corr desc: parameter, FC_ULONG */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1700 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */ +#else + NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */ +#endif +/* 1702 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1704 */ NdrFcShort( 0xfffffdc0 ), /* Offset= -576 (1128) */ +/* 1706 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1708 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1710 */ NdrFcShort( 0xfffffdba ), /* Offset= -582 (1128) */ +/* 1712 */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 1714 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 1716 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1718 */ NdrFcShort( 0x2 ), /* Offset= 2 (1720) */ +/* 1720 */ + 0x2f, /* FC_IP */ + 0x5c, /* FC_PAD */ +/* 1722 */ 0x28, /* Corr desc: parameter, FC_LONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1724 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */ +#else + NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */ +#endif +/* 1726 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1728 */ NdrFcShort( 0x2 ), /* Offset= 2 (1730) */ +/* 1730 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1732 */ NdrFcLong( 0x20402 ), /* 132098 */ +/* 1736 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1738 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1740 */ 0xc0, /* 192 */ + 0x0, /* 0 */ +/* 1742 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1744 */ 0x0, /* 0 */ + 0x0, /* 0 */ +/* 1746 */ 0x0, /* 0 */ + 0x46, /* 70 */ +/* 1748 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1750 */ NdrFcShort( 0x26 ), /* Offset= 38 (1788) */ +/* 1752 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1754 */ NdrFcShort( 0x20 ), /* 32 */ +/* 1756 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1758 */ NdrFcShort( 0x0 ), /* Offset= 0 (1758) */ +/* 1760 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1762 */ NdrFcShort( 0xfffff944 ), /* Offset= -1724 (38) */ +/* 1764 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1766 */ NdrFcShort( 0xfffffd70 ), /* Offset= -656 (1110) */ +/* 1768 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1770 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1772 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1774 */ 0x19, /* Corr desc: field pointer, FC_ULONG */ + 0x0, /* */ +/* 1776 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1778 */ NdrFcLong( 0xffffffff ), /* -1 */ +/* 1782 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1784 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (1752) */ +/* 1786 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1788 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1790 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1792 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1794 */ NdrFcShort( 0x6 ), /* Offset= 6 (1800) */ +/* 1796 */ 0x8, /* FC_LONG */ + 0x36, /* FC_POINTER */ +/* 1798 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1800 */ + 0x13, 0x0, /* FC_OP */ +/* 1802 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (1770) */ +/* 1804 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1806 */ NdrFcShort( 0x2 ), /* Offset= 2 (1808) */ +/* 1808 */ + 0x13, 0x0, /* FC_OP */ +/* 1810 */ NdrFcShort( 0x2 ), /* Offset= 2 (1812) */ +/* 1812 */ + 0x1a, /* FC_BOGUS_STRUCT */ + 0x3, /* 3 */ +/* 1814 */ NdrFcShort( 0x20 ), /* 32 */ +/* 1816 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1818 */ NdrFcShort( 0x0 ), /* Offset= 0 (1818) */ +/* 1820 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1822 */ NdrFcShort( 0xfffff908 ), /* Offset= -1784 (38) */ +/* 1824 */ 0x8, /* FC_LONG */ + 0xe, /* FC_ENUM32 */ +/* 1826 */ 0x6, /* FC_SHORT */ + 0x6, /* FC_SHORT */ +/* 1828 */ 0x6, /* FC_SHORT */ + 0x3e, /* FC_STRUCTPAD2 */ +/* 1830 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1832 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1834 */ NdrFcShort( 0x4 ), /* Offset= 4 (1838) */ +/* 1836 */ 0x8, /* FC_LONG */ + 0x5c, /* FC_PAD */ +/* 1838 */ 0xb4, /* FC_USER_MARSHAL */ + 0x3, /* 3 */ +/* 1840 */ NdrFcShort( 0x2 ), /* 2 */ +/* 1842 */ NdrFcShort( 0xc ), /* 12 */ +/* 1844 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1846 */ NdrFcShort( 0xfffffff6 ), /* Offset= -10 (1836) */ +/* 1848 */ + 0x11, 0x0, /* FC_RP */ +/* 1850 */ NdrFcShort( 0x2 ), /* Offset= 2 (1852) */ +/* 1852 */ + 0x21, /* FC_BOGUS_ARRAY */ + 0x3, /* 3 */ +/* 1854 */ NdrFcShort( 0x0 ), /* 0 */ +/* 1856 */ 0x27, /* Corr desc: parameter, FC_USHORT */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1858 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */ +#else + NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */ +#endif +/* 1860 */ 0x27, /* Corr desc: parameter, FC_USHORT */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1862 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */ +#else + NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */ +#endif +/* 1864 */ 0x4c, /* FC_EMBEDDED_COMPLEX */ + 0x0, /* 0 */ +/* 1866 */ NdrFcShort( 0xfffff8c0 ), /* Offset= -1856 (10) */ +/* 1868 */ 0x5c, /* FC_PAD */ + 0x5b, /* FC_END */ +/* 1870 */ + 0x11, 0x0, /* FC_RP */ +/* 1872 */ NdrFcShort( 0x2 ), /* Offset= 2 (1874) */ +/* 1874 */ + 0x1c, /* FC_CVARRAY */ + 0x3, /* 3 */ +/* 1876 */ NdrFcShort( 0x4 ), /* 4 */ +/* 1878 */ 0x27, /* Corr desc: parameter, FC_USHORT */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1880 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */ +#else + NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */ +#endif +/* 1882 */ 0x27, /* Corr desc: parameter, FC_USHORT */ + 0x54, /* FC_DEREFERENCE */ +#ifndef _ALPHA_ +/* 1884 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */ +#else + NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */ +#endif +/* 1886 */ 0x8, /* FC_LONG */ + 0x5b, /* FC_END */ +/* 1888 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1890 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 1892 */ + 0x11, 0x4, /* FC_RP [alloced_on_stack] */ +/* 1894 */ NdrFcShort( 0xfffff8c0 ), /* Offset= -1856 (38) */ +/* 1896 */ + 0x11, 0x14, /* FC_RP [alloced_on_stack] */ +/* 1898 */ NdrFcShort( 0x2 ), /* Offset= 2 (1900) */ +/* 1900 */ + 0x2f, /* FC_IP */ + 0x5c, /* FC_PAD */ +/* 1902 */ 0x28, /* Corr desc: parameter, FC_LONG */ + 0x0, /* */ +#ifndef _ALPHA_ +/* 1904 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */ +#else + NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */ +#endif + + 0x0 + } + }; + +const CInterfaceProxyVtbl * _oaidl_ProxyVtblList[] = +{ + ( CInterfaceProxyVtbl *) &_IDispatchProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeInfoProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeLibProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeCompProxyVtbl, + ( CInterfaceProxyVtbl *) &_IEnumVARIANTProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeLib2ProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeInfo2ProxyVtbl, + ( CInterfaceProxyVtbl *) &_IErrorInfoProxyVtbl, + ( CInterfaceProxyVtbl *) &_ITypeFactoryProxyVtbl, + ( CInterfaceProxyVtbl *) &_ICreateErrorInfoProxyVtbl, + ( CInterfaceProxyVtbl *) &_ISupportErrorInfoProxyVtbl, + 0 +}; + +const CInterfaceStubVtbl * _oaidl_StubVtblList[] = +{ + ( CInterfaceStubVtbl *) &_IDispatchStubVtbl, + ( CInterfaceStubVtbl *) &_ITypeInfoStubVtbl, + ( CInterfaceStubVtbl *) &_ITypeLibStubVtbl, + ( CInterfaceStubVtbl *) &_ITypeCompStubVtbl, + ( CInterfaceStubVtbl *) &_IEnumVARIANTStubVtbl, + ( CInterfaceStubVtbl *) &_ITypeLib2StubVtbl, + ( CInterfaceStubVtbl *) &_ITypeInfo2StubVtbl, + ( CInterfaceStubVtbl *) &_IErrorInfoStubVtbl, + ( CInterfaceStubVtbl *) &_ITypeFactoryStubVtbl, + ( CInterfaceStubVtbl *) &_ICreateErrorInfoStubVtbl, + ( CInterfaceStubVtbl *) &_ISupportErrorInfoStubVtbl, + 0 +}; + +PCInterfaceName const _oaidl_InterfaceNamesList[] = +{ + "IDispatch", + "ITypeInfo", + "ITypeLib", + "ITypeComp", + "IEnumVARIANT", + "ITypeLib2", + "ITypeInfo2", + "IErrorInfo", + "ITypeFactory", + "ICreateErrorInfo", + "ISupportErrorInfo", + 0 +}; + + +#define _oaidl_CHECK_IID(n) IID_GENERIC_CHECK_IID( _oaidl, pIID, n) + +int __stdcall _oaidl_IID_Lookup( const IID * pIID, int * pIndex ) +{ + IID_BS_LOOKUP_SETUP + + IID_BS_LOOKUP_INITIAL_TEST( _oaidl, 11, 8 ) + IID_BS_LOOKUP_NEXT_TEST( _oaidl, 4 ) + IID_BS_LOOKUP_NEXT_TEST( _oaidl, 2 ) + IID_BS_LOOKUP_NEXT_TEST( _oaidl, 1 ) + IID_BS_LOOKUP_RETURN_RESULT( _oaidl, 11, *pIndex ) + +} + +const ExtendedProxyFileInfo oaidl_ProxyFileInfo = +{ + (PCInterfaceProxyVtblList *) & _oaidl_ProxyVtblList, + (PCInterfaceStubVtblList *) & _oaidl_StubVtblList, + (const PCInterfaceName * ) & _oaidl_InterfaceNamesList, + 0, /* no delegation */ + & _oaidl_IID_Lookup, + 11, + 1, + 0, /* table of [async_uuid] interfaces */ + 0, /* Filler1 */ + 0, /* Filler2 */ + 0 /* Filler3 */ +}; diff --git a/dlls/oleaut32/oleaut32.spec b/dlls/oleaut32/oleaut32.spec index a12142fbb08..24b5f764bfd 100644 --- a/dlls/oleaut32/oleaut32.spec +++ b/dlls/oleaut32/oleaut32.spec @@ -278,14 +278,14 @@ 280 stdcall VarUI4FromI1(long ptr) 281 stdcall VarUI4FromUI2(long ptr) 282 stub VarUI4FromDec -283 stub BSTR_UserSize -284 stub BSTR_UserMarshal -285 stub BSTR_UserUnmarshal -286 stub BSTR_UserFree -287 stub VARIANT_UserSize -288 stub VARIANT_UserMarshal -289 stub VARIANT_UserUnmarshal -290 stub VARIANT_UserFree +283 stdcall BSTR_UserSize(ptr long ptr) BSTR_UserSize +284 stdcall BSTR_UserMarshal(ptr ptr ptr) BSTR_UserMarshal +285 stdcall BSTR_UserUnmarshal(ptr ptr ptr) BSTR_UserUnmarshal +286 stdcall BSTR_UserFree(ptr ptr) BSTR_UserFree +287 stdcall VARIANT_UserSize(ptr long ptr) VARIANT_UserSize +288 stdcall VARIANT_UserMarshal(ptr ptr ptr) VARIANT_UserMarshal +289 stdcall VARIANT_UserUnmarshal(ptr ptr ptr) VARIANT_UserUnmarshal +290 stdcall VARIANT_UserFree(ptr ptr) VARIANT_UserFree 291 stub LPSAFEARRAY_UserSize 292 stub LPSAFEARRAY_UserMarshal 293 stub LPSAFEARRAY_UserUnmarshal diff --git a/dlls/oleaut32/usrmarshal.c b/dlls/oleaut32/usrmarshal.c new file mode 100644 index 00000000000..efab4829c2c --- /dev/null +++ b/dlls/oleaut32/usrmarshal.c @@ -0,0 +1,1059 @@ +/* + * Misc marshalling routines + * + * Copyright 2002 Ove Kaaven + * + * 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 + */ + +#include + +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" +#include "winuser.h" +#include "winerror.h" + +#include "ole2.h" +#include "oleauto.h" +#include "rpcproxy.h" +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ole); + +/* FIXME: not supposed to be here */ + +const CLSID CLSID_PSDispatch = { + 0x20420, 0, 0, {0xC0, 0, 0, 0, 0, 0, 0, 0x46} +}; + +static CStdPSFactoryBuffer PSFactoryBuffer; + +CSTDSTUBBUFFERRELEASE(&PSFactoryBuffer) + +extern const ExtendedProxyFileInfo oaidl_ProxyFileInfo; + +const ProxyFileInfo* OLEAUT32_ProxyFileList[] = { + &oaidl_ProxyFileInfo, + NULL +}; + +HRESULT OLEAUTPS_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv) +{ + return NdrDllGetClassObject(rclsid, riid, ppv, OLEAUT32_ProxyFileList, + &CLSID_PSDispatch, &PSFactoryBuffer); +} + +/* CLEANLOCALSTORAGE */ +/* I'm not sure how this is supposed to work yet */ + +unsigned long WINAPI CLEANLOCALSTORAGE_UserSize(unsigned long *pFlags, unsigned long Start, CLEANLOCALSTORAGE *pstg) +{ + return Start + sizeof(DWORD); +} + +unsigned char * WINAPI CLEANLOCALSTORAGE_UserMarshal(unsigned long *pFlags, unsigned char *Buffer, CLEANLOCALSTORAGE *pstg) +{ + *(DWORD*)Buffer = 0; + return Buffer + sizeof(DWORD); +} + +unsigned char * WINAPI CLEANLOCALSTORAGE_UserUnmarshal(unsigned long *pFlags, unsigned char *Buffer, CLEANLOCALSTORAGE *pstr) +{ + return Buffer + sizeof(DWORD); +} + +void WINAPI CLEANLOCALSTORAGE_UserFree(unsigned long *pFlags, CLEANLOCALSTORAGE *pstr) +{ +} + +/* BSTR */ + +unsigned long WINAPI BSTR_UserSize(unsigned long *pFlags, unsigned long Start, BSTR *pstr) +{ + TRACE("(%lx,%ld,%p) => %p\n", *pFlags, Start, pstr, *pstr); + if (*pstr) TRACE("string=%s\n", debugstr_w(*pstr)); + Start += sizeof(FLAGGED_WORD_BLOB) + sizeof(OLECHAR) * (SysStringLen(*pstr) - 1); + TRACE("returning %ld\n", Start); + return Start; +} + +unsigned char * WINAPI BSTR_UserMarshal(unsigned long *pFlags, unsigned char *Buffer, BSTR *pstr) +{ + wireBSTR str = (wireBSTR)Buffer; + + TRACE("(%lx,%p,%p) => %p\n", *pFlags, Buffer, pstr, *pstr); + if (*pstr) TRACE("string=%s\n", debugstr_w(*pstr)); + str->fFlags = 0; + str->clSize = SysStringLen(*pstr); + if (str->clSize) + memcpy(&str->asData, *pstr, sizeof(OLECHAR) * str->clSize); + return Buffer + sizeof(FLAGGED_WORD_BLOB) + sizeof(OLECHAR) * (str->clSize - 1); +} + +unsigned char * WINAPI BSTR_UserUnmarshal(unsigned long *pFlags, unsigned char *Buffer, BSTR *pstr) +{ + wireBSTR str = (wireBSTR)Buffer; + TRACE("(%lx,%p,%p) => %p\n", *pFlags, Buffer, pstr, *pstr); + if (str->clSize) { + SysReAllocStringLen(pstr, (OLECHAR*)&str->asData, str->clSize); + } + else if (*pstr) { + SysFreeString(*pstr); + *pstr = NULL; + } + if (*pstr) TRACE("string=%s\n", debugstr_w(*pstr)); + return Buffer + sizeof(FLAGGED_WORD_BLOB) + sizeof(OLECHAR) * (str->clSize - 1); +} + +void WINAPI BSTR_UserFree(unsigned long *pFlags, BSTR *pstr) +{ + TRACE("(%lx,%p) => %p\n", *pFlags, pstr, *pstr); + if (*pstr) { + SysFreeString(*pstr); + *pstr = NULL; + } +} + +/* VARIANT */ +/* I'm not too sure how to do this yet */ + +#define VARIANT_wiresize sizeof(struct _wireVARIANT) + +static unsigned wire_size(VARTYPE vt) +{ + if (vt & VT_ARRAY) return 0; + + switch (vt & ~VT_BYREF) { + case VT_EMPTY: + case VT_NULL: + return 0; + case VT_I1: + case VT_UI1: + return sizeof(CHAR); + case VT_I2: + case VT_UI2: + return sizeof(SHORT); + case VT_I4: + case VT_UI4: + return sizeof(LONG); + case VT_INT: + case VT_UINT: + return sizeof(INT); + case VT_R4: + return sizeof(FLOAT); + case VT_R8: + return sizeof(DOUBLE); + case VT_BOOL: + return sizeof(VARIANT_BOOL); + case VT_ERROR: + return sizeof(SCODE); + case VT_DATE: + return sizeof(DATE); + case VT_CY: + return sizeof(CY); + case VT_DECIMAL: + return sizeof(DECIMAL); + case VT_BSTR: + case VT_VARIANT: + case VT_UNKNOWN: + case VT_DISPATCH: + case VT_SAFEARRAY: + case VT_RECORD: + return 0; + default: + FIXME("unhandled VT %d\n", vt); + return 0; + } +} + +static unsigned wire_extra(unsigned long *pFlags, VARIANT *pvar) +{ + if (V_VT(pvar) & VT_ARRAY) { + FIXME("wire-size safearray\n"); + return 0; + } + switch (V_VT(pvar)) { + case VT_BSTR: + return BSTR_UserSize(pFlags, 0, &V_BSTR(pvar)); + case VT_BSTR | VT_BYREF: + return BSTR_UserSize(pFlags, 0, V_BSTRREF(pvar)); + case VT_SAFEARRAY: + case VT_SAFEARRAY | VT_BYREF: + FIXME("wire-size safearray\n"); + return 0; + case VT_VARIANT | VT_BYREF: + return VARIANT_UserSize(pFlags, 0, V_VARIANTREF(pvar)); + case VT_UNKNOWN: + case VT_DISPATCH: + FIXME("wire-size interfaces\n"); + return 0; + case VT_RECORD: + FIXME("wire-size record\n"); + return 0; + default: + return 0; + } +} + +unsigned long WINAPI VARIANT_UserSize(unsigned long *pFlags, unsigned long Start, VARIANT *pvar) +{ + TRACE("(%lx,%ld,%p)\n", *pFlags, Start, pvar); + TRACE("vt=%04x\n", V_VT(pvar)); + Start += VARIANT_wiresize + wire_extra(pFlags, pvar); + TRACE("returning %ld\n", Start); + return Start; +} + +unsigned char * WINAPI VARIANT_UserMarshal(unsigned long *pFlags, unsigned char *Buffer, VARIANT *pvar) +{ + wireVARIANT var = (wireVARIANT)Buffer; + unsigned size, extra; + unsigned char *Pos = Buffer + VARIANT_wiresize; + + TRACE("(%lx,%p,%p)\n", *pFlags, Buffer, pvar); + TRACE("vt=%04x\n", V_VT(pvar)); + + memset(var, 0, sizeof(*var)); + var->clSize = sizeof(*var); + var->vt = pvar->n1.n2.vt; + + var->rpcReserved = var->vt; + if ((var->vt & VT_ARRAY) || + ((var->vt & VT_TYPEMASK) == VT_SAFEARRAY)) + var->vt = VT_ARRAY | (var->vt & VT_BYREF); + + if (var->vt == VT_DECIMAL) { + /* special case because decVal is on a different level */ + var->u.decVal = pvar->n1.decVal; + return Pos; + } + + size = wire_size(V_VT(pvar)); + extra = wire_extra(pFlags, pvar); + var->wReserved1 = pvar->n1.n2.wReserved1; + var->wReserved2 = pvar->n1.n2.wReserved2; + var->wReserved3 = pvar->n1.n2.wReserved3; + if (size) { + if (var->vt & VT_BYREF) + memcpy(&var->u.cVal, pvar->n1.n2.n3.byref, size); + else + memcpy(&var->u.cVal, &pvar->n1.n2.n3, size); + } + if (!extra) return Pos; + + switch (var->vt) { + case VT_BSTR: + Pos = BSTR_UserMarshal(pFlags, Pos, &V_BSTR(pvar)); + break; + case VT_BSTR | VT_BYREF: + Pos = BSTR_UserMarshal(pFlags, Pos, V_BSTRREF(pvar)); + break; + case VT_VARIANT | VT_BYREF: + Pos = VARIANT_UserMarshal(pFlags, Pos, V_VARIANTREF(pvar)); + break; + case VT_RECORD: + FIXME("handle BRECORD by val\n"); + break; + case VT_RECORD | VT_BYREF: + FIXME("handle BRECORD by ref\n"); + break; + default: + FIXME("handle unknown complex type\n"); + break; + } + var->clSize = Pos - Buffer; + TRACE("marshaled size=%ld\n", var->clSize); + return Pos; +} + +unsigned char * WINAPI VARIANT_UserUnmarshal(unsigned long *pFlags, unsigned char *Buffer, VARIANT *pvar) +{ + wireVARIANT var = (wireVARIANT)Buffer; + unsigned size; + unsigned char *Pos = Buffer + VARIANT_wiresize; + + TRACE("(%lx,%p,%p)\n", *pFlags, Buffer, pvar); + VariantInit(pvar); + pvar->n1.n2.vt = var->rpcReserved; + TRACE("marshaled: clSize=%ld, vt=%04x\n", var->clSize, var->vt); + TRACE("vt=%04x\n", V_VT(pvar)); + TRACE("reserved: %d, %d, %d\n", var->wReserved1, var->wReserved2, var->wReserved3); + TRACE("val: %ld\n", var->u.lVal); + + if (var->vt == VT_DECIMAL) { + /* special case because decVal is on a different level */ + pvar->n1.decVal = var->u.decVal; + return Pos; + } + + size = wire_size(V_VT(pvar)); + pvar->n1.n2.wReserved1 = var->wReserved1; + pvar->n1.n2.wReserved2 = var->wReserved2; + pvar->n1.n2.wReserved3 = var->wReserved3; + if (size) { + if (var->vt & VT_BYREF) { + pvar->n1.n2.n3.byref = CoTaskMemAlloc(size); + memcpy(pvar->n1.n2.n3.byref, &var->u.cVal, size); + } + else + memcpy(&pvar->n1.n2.n3, &var->u.cVal, size); + } + if (var->clSize <= VARIANT_wiresize) return Pos; + + switch (var->vt) { + case VT_BSTR: + Pos = BSTR_UserUnmarshal(pFlags, Pos, &V_BSTR(pvar)); + break; + case VT_BSTR | VT_BYREF: + pvar->n1.n2.n3.byref = CoTaskMemAlloc(sizeof(BSTR)); + *(BSTR*)pvar->n1.n2.n3.byref = NULL; + Pos = BSTR_UserUnmarshal(pFlags, Pos, V_BSTRREF(pvar)); + break; + case VT_VARIANT | VT_BYREF: + pvar->n1.n2.n3.byref = CoTaskMemAlloc(sizeof(VARIANT)); + Pos = VARIANT_UserUnmarshal(pFlags, Pos, V_VARIANTREF(pvar)); + break; + case VT_RECORD: + FIXME("handle BRECORD by val\n"); + break; + case VT_RECORD | VT_BYREF: + FIXME("handle BRECORD by ref\n"); + break; + default: + FIXME("handle unknown complex type\n"); + break; + } + if (Pos != Buffer + var->clSize) { + ERR("size difference during unmarshal\n"); + } + return Buffer + var->clSize; +} + +void WINAPI VARIANT_UserFree(unsigned long *pFlags, VARIANT *pvar) +{ + VARTYPE vt = V_VT(pvar); + PVOID ref = NULL; + + TRACE("(%lx,%p)\n", *pFlags, pvar); + TRACE("vt=%04x\n", V_VT(pvar)); + + if (vt & VT_BYREF) ref = pvar->n1.n2.n3.byref; + + VariantClear(pvar); + if (!ref) return; + + switch (vt) { + case VT_BSTR | VT_BYREF: + BSTR_UserFree(pFlags, ref); + break; + case VT_VARIANT | VT_BYREF: + VARIANT_UserFree(pFlags, ref); + break; + case VT_RECORD | VT_BYREF: + FIXME("handle BRECORD by ref\n"); + break; + default: + FIXME("handle unknown complex type\n"); + break; + } + + CoTaskMemFree(ref); +} + +/* IDispatch */ +/* exactly how Invoke is marshalled is not very clear to me yet, + * but the way I've done it seems to work for me */ + +HRESULT CALLBACK IDispatch_Invoke_Proxy( + IDispatch* This, + DISPID dispIdMember, + REFIID riid, + LCID lcid, + WORD wFlags, + DISPPARAMS* pDispParams, + VARIANT* pVarResult, + EXCEPINFO* pExcepInfo, + UINT* puArgErr) +{ + HRESULT hr; + VARIANT VarResult; + UINT* rgVarRefIdx = NULL; + VARIANTARG* rgVarRef = NULL; + UINT u, cVarRef; + + TRACE("(%p)->(%ld,%s,%lx,%x,%p,%p,%p,%p)\n", This, + dispIdMember, debugstr_guid(riid), + lcid, wFlags, pDispParams, pVarResult, + pExcepInfo, puArgErr); + + /* [out] args can't be null, use dummy vars if needed */ + if (!pVarResult) pVarResult = &VarResult; + + /* count by-ref args */ + for (cVarRef=0,u=0; ucArgs; u++) { + VARIANTARG* arg = &pDispParams->rgvarg[u]; + if (V_VT(arg) & VT_BYREF) { + cVarRef++; + } + } + if (cVarRef) { + rgVarRefIdx = CoTaskMemAlloc(sizeof(UINT)*cVarRef); + rgVarRef = CoTaskMemAlloc(sizeof(VARIANTARG)*cVarRef); + /* make list of by-ref args */ + for (cVarRef=0,u=0; ucArgs; u++) { + VARIANTARG* arg = &pDispParams->rgvarg[u]; + if (V_VT(arg) & VT_BYREF) { + rgVarRefIdx[cVarRef] = u; + VariantInit(&rgVarRef[cVarRef]); + cVarRef++; + } + } + } else { + /* [out] args still can't be null, + * but we can point these anywhere in this case, + * since they won't be written to when cVarRef is 0 */ + rgVarRefIdx = puArgErr; + rgVarRef = pVarResult; + } + TRACE("passed by ref: %d args\n", cVarRef); + hr = IDispatch_RemoteInvoke_Proxy(This, + dispIdMember, + riid, + lcid, + wFlags, + pDispParams, + pVarResult, + pExcepInfo, + puArgErr, + cVarRef, + rgVarRefIdx, + rgVarRef); + if (cVarRef) { + for (u=0; urgvarg[i], + &rgVarRef[u]); + VariantClear(&rgVarRef[u]); + } + CoTaskMemFree(rgVarRef); + CoTaskMemFree(rgVarRefIdx); + } + return hr; +} + +HRESULT __RPC_STUB IDispatch_Invoke_Stub( + IDispatch* This, + DISPID dispIdMember, + REFIID riid, + LCID lcid, + DWORD dwFlags, + DISPPARAMS* pDispParams, + VARIANT* pVarResult, + EXCEPINFO* pExcepInfo, + UINT* pArgErr, + UINT cVarRef, + UINT* rgVarRefIdx, + VARIANTARG* rgVarRef) +{ + HRESULT hr; + VARIANTARG *rgvarg, *arg; + UINT u; + + /* let the real Invoke operate on a copy of the in parameters, + * so we don't risk losing pointers to allocated memory */ + rgvarg = pDispParams->rgvarg; + arg = CoTaskMemAlloc(sizeof(VARIANTARG)*pDispParams->cArgs); + for (u=0; ucArgs; u++) { + VariantInit(&arg[u]); + VariantCopy(&arg[u], &rgvarg[u]); + } + pDispParams->rgvarg = arg; + + /* initialize out parameters, so that they can be marshalled + * in case the real Invoke doesn't initialize them */ + VariantInit(pVarResult); + memset(pExcepInfo, 0, sizeof(*pExcepInfo)); + *pArgErr = 0; + + hr = IDispatch_Invoke(This, + dispIdMember, + riid, + lcid, + dwFlags, + pDispParams, + pVarResult, + pExcepInfo, + pArgErr); + + /* copy ref args to out list */ + for (u=0; ucArgs; u++) { + VariantClear(&arg[u]); + } + pDispParams->rgvarg = rgvarg; + CoTaskMemFree(arg); + + return hr; +} + +/* IEnumVARIANT */ + +HRESULT CALLBACK IEnumVARIANT_Next_Proxy( + IEnumVARIANT* This, + ULONG celt, + VARIANT* rgVar, + ULONG* pCeltFetched) +{ + ULONG fetched; + if (!pCeltFetched) + pCeltFetched = &fetched; + return IEnumVARIANT_RemoteNext_Proxy(This, + celt, + rgVar, + pCeltFetched); +} + +HRESULT __RPC_STUB IEnumVARIANT_Next_Stub( + IEnumVARIANT* This, + ULONG celt, + VARIANT* rgVar, + ULONG* pCeltFetched) +{ + HRESULT hr; + *pCeltFetched = 0; + hr = IEnumVARIANT_Next(This, + celt, + rgVar, + pCeltFetched); + if (hr == S_OK) *pCeltFetched = celt; + return hr; +} + +/* ITypeComp */ + +HRESULT CALLBACK ITypeComp_Bind_Proxy( + ITypeComp* This, + LPOLESTR szName, + ULONG lHashVal, + WORD wFlags, + ITypeInfo** ppTInfo, + DESCKIND* pDescKind, + BINDPTR* pBindPtr) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeComp_Bind_Stub( + ITypeComp* This, + LPOLESTR szName, + ULONG lHashVal, + WORD wFlags, + ITypeInfo** ppTInfo, + DESCKIND* pDescKind, + LPFUNCDESC* ppFuncDesc, + LPVARDESC* ppVarDesc, + ITypeComp** ppTypeComp, + CLEANLOCALSTORAGE* pDummy) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeComp_BindType_Proxy( + ITypeComp* This, + LPOLESTR szName, + ULONG lHashVal, + ITypeInfo** ppTInfo, + ITypeComp** ppTComp) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeComp_BindType_Stub( + ITypeComp* This, + LPOLESTR szName, + ULONG lHashVal, + ITypeInfo** ppTInfo) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +/* ITypeInfo */ + +HRESULT CALLBACK ITypeInfo_GetTypeAttr_Proxy( + ITypeInfo* This, + TYPEATTR** ppTypeAttr) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetTypeAttr_Stub( + ITypeInfo* This, + LPTYPEATTR* ppTypeAttr, + CLEANLOCALSTORAGE* pDummy) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetFuncDesc_Proxy( + ITypeInfo* This, + UINT index, + FUNCDESC** ppFuncDesc) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetFuncDesc_Stub( + ITypeInfo* This, + UINT index, + LPFUNCDESC* ppFuncDesc, + CLEANLOCALSTORAGE* pDummy) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetVarDesc_Proxy( + ITypeInfo* This, + UINT index, + VARDESC** ppVarDesc) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetVarDesc_Stub( + ITypeInfo* This, + UINT index, + LPVARDESC* ppVarDesc, + CLEANLOCALSTORAGE* pDummy) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetNames_Proxy( + ITypeInfo* This, + MEMBERID memid, + BSTR* rgBstrNames, + UINT cMaxNames, + UINT* pcNames) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetNames_Stub( + ITypeInfo* This, + MEMBERID memid, + BSTR* rgBstrNames, + UINT cMaxNames, + UINT* pcNames) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetIDsOfNames_Proxy( + ITypeInfo* This, + LPOLESTR* rgszNames, + UINT cNames, + MEMBERID* pMemId) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetIDsOfNames_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_Invoke_Proxy( + ITypeInfo* This, + PVOID pvInstance, + MEMBERID memid, + WORD wFlags, + DISPPARAMS* pDispParams, + VARIANT* pVarResult, + EXCEPINFO* pExcepInfo, + UINT* puArgErr) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_Invoke_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetDocumentation_Proxy( + ITypeInfo* This, + MEMBERID memid, + BSTR* pBstrName, + BSTR* pBstrDocString, + DWORD* pdwHelpContext, + BSTR* pBstrHelpFile) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetDocumentation_Stub( + ITypeInfo* This, + MEMBERID memid, + DWORD refPtrFlags, + BSTR* pBstrName, + BSTR* pBstrDocString, + DWORD* pdwHelpContext, + BSTR* pBstrHelpFile) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetDllEntry_Proxy( + ITypeInfo* This, + MEMBERID memid, + INVOKEKIND invKind, + BSTR* pBstrDllName, + BSTR* pBstrName, + WORD* pwOrdinal) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetDllEntry_Stub( + ITypeInfo* This, + MEMBERID memid, + INVOKEKIND invKind, + DWORD refPtrFlags, + BSTR* pBstrDllName, + BSTR* pBstrName, + WORD* pwOrdinal) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_AddressOfMember_Proxy( + ITypeInfo* This, + MEMBERID memid, + INVOKEKIND invKind, + PVOID* ppv) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_AddressOfMember_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_CreateInstance_Proxy( + ITypeInfo* This, + IUnknown* pUnkOuter, + REFIID riid, + PVOID* ppvObj) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_CreateInstance_Stub( + ITypeInfo* This, + REFIID riid, + IUnknown** ppvObj) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeInfo_GetContainingTypeLib_Proxy( + ITypeInfo* This, + ITypeLib** ppTLib, + UINT* pIndex) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub( + ITypeInfo* This, + ITypeLib** ppTLib, + UINT* pIndex) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy( + ITypeInfo* This, + TYPEATTR* pTypeAttr) +{ + FIXME("not implemented\n"); +} + +HRESULT __RPC_STUB ITypeInfo_ReleaseTypeAttr_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +void CALLBACK ITypeInfo_ReleaseFuncDesc_Proxy( + ITypeInfo* This, + FUNCDESC* pFuncDesc) +{ + FIXME("not implemented\n"); +} + +HRESULT __RPC_STUB ITypeInfo_ReleaseFuncDesc_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +void CALLBACK ITypeInfo_ReleaseVarDesc_Proxy( + ITypeInfo* This, + VARDESC* pVarDesc) +{ + FIXME("not implemented\n"); +} + +HRESULT __RPC_STUB ITypeInfo_ReleaseVarDesc_Stub( + ITypeInfo* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + + +/* ITypeInfo2 */ + +HRESULT CALLBACK ITypeInfo2_GetDocumentation2_Proxy( + ITypeInfo2* This, + MEMBERID memid, + LCID lcid, + BSTR* pbstrHelpString, + DWORD* pdwHelpStringContext, + BSTR* pbstrHelpStringDll) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeInfo2_GetDocumentation2_Stub( + ITypeInfo2* This, + MEMBERID memid, + LCID lcid, + DWORD refPtrFlags, + BSTR* pbstrHelpString, + DWORD* pdwHelpStringContext, + BSTR* pbstrHelpStringDll) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +/* ITypeLib */ + +UINT CALLBACK ITypeLib_GetTypeInfoCount_Proxy( + ITypeLib* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib_GetTypeInfoCount_Stub( + ITypeLib* This, + UINT* pcTInfo) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeLib_GetLibAttr_Proxy( + ITypeLib* This, + TLIBATTR** ppTLibAttr) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub( + ITypeLib* This, + LPTLIBATTR* ppTLibAttr, + CLEANLOCALSTORAGE* pDummy) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeLib_GetDocumentation_Proxy( + ITypeLib* This, + INT index, + BSTR* pBstrName, + BSTR* pBstrDocString, + DWORD* pdwHelpContext, + BSTR* pBstrHelpFile) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib_GetDocumentation_Stub( + ITypeLib* This, + INT index, + DWORD refPtrFlags, + BSTR* pBstrName, + BSTR* pBstrDocString, + DWORD* pdwHelpContext, + BSTR* pBstrHelpFile) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeLib_IsName_Proxy( + ITypeLib* This, + LPOLESTR szNameBuf, + ULONG lHashVal, + BOOL* pfName) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib_IsName_Stub( + ITypeLib* This, + LPOLESTR szNameBuf, + ULONG lHashVal, + BOOL* pfName, + BSTR* pBstrLibName) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeLib_FindName_Proxy( + ITypeLib* This, + LPOLESTR szNameBuf, + ULONG lHashVal, + ITypeInfo** ppTInfo, + MEMBERID* rgMemId, + USHORT* pcFound) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib_FindName_Stub( + ITypeLib* This, + LPOLESTR szNameBuf, + ULONG lHashVal, + ITypeInfo** ppTInfo, + MEMBERID* rgMemId, + USHORT* pcFound, + BSTR* pBstrLibName) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +void CALLBACK ITypeLib_ReleaseTLibAttr_Proxy( + ITypeLib* This, + TLIBATTR* pTLibAttr) +{ + FIXME("not implemented\n"); +} + +HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub( + ITypeLib* This) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + + +/* ITypeLib2 */ + +HRESULT CALLBACK ITypeLib2_GetLibStatistics_Proxy( + ITypeLib2* This, + ULONG* pcUniqueNames, + ULONG* pcchUniqueNames) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib2_GetLibStatistics_Stub( + ITypeLib2* This, + ULONG* pcUniqueNames, + ULONG* pcchUniqueNames) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT CALLBACK ITypeLib2_GetDocumentation2_Proxy( + ITypeLib2* This, + INT index, + LCID lcid, + BSTR* pbstrHelpString, + DWORD* pdwHelpStringContext, + BSTR* pbstrHelpStringDll) +{ + FIXME("not implemented\n"); + return E_FAIL; +} + +HRESULT __RPC_STUB ITypeLib2_GetDocumentation2_Stub( + ITypeLib2* This, + INT index, + LCID lcid, + DWORD refPtrFlags, + BSTR* pbstrHelpString, + DWORD* pdwHelpStringContext, + BSTR* pbstrHelpStringDll) +{ + FIXME("not implemented\n"); + return E_FAIL; +}