📄 oaidl_p.c
字号:
/* This file contains the proxy/stub code for core COM interfaces.
It is usually generated directly by MIDL, however this file has
been tweaked since then to account for slight differences in the way
gcc and MSVC++ compile it. In particular, in some functions REFIIDs
declared on the stack have been converted to plain IID* in order to eliminate
the constness of the REFIID type, ensuring that the zero initializer is not
discarded.
Therefore, please do not regenerate this file.
*/
/* 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 <rpcproxy.h> version is high enough to compile this file*/
#ifndef __REDQ_RPCPROXY_H_VERSION__
#define __REQUIRED_RPCPROXY_H_VERSION__ 440
#endif
#include <stdarg.h>
#define COBJMACROS
#include "windef.h"
#include "winbase.h"
#include "objbase.h"
#include "rpcproxy.h"
#ifndef __RPCPROXY_H_VERSION__
#error this stub requires an updated version of <rpcproxy.h>
#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;
static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
/* Standard interface: __MIDL_itf_oaidl_0000, ver. 0.0,
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}} */
static 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;
_StubMsg.Buffer += sizeof(UINT);
_RetVal = *( HRESULT __RPC_FAR * )_StubMsg.Buffer;
_StubMsg.Buffer += sizeof(HRESULT);
}
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);
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;
_StubMsg.Buffer += sizeof(UINT);
*( HRESULT __RPC_FAR * )_StubMsg.Buffer = _RetVal;
_StubMsg.Buffer += sizeof(HRESULT);
}
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;
_StubMsg.Buffer += sizeof(UINT);
*( LCID __RPC_FAR * )_StubMsg.Buffer = lcid;
_StubMsg.Buffer += sizeof(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;
_StubMsg.Buffer += sizeof(HRESULT);
}
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);
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;
_StubMsg.Buffer += sizeof(UINT);
lcid = *( LCID __RPC_FAR * )_StubMsg.Buffer;
_StubMsg.Buffer += sizeof(LCID);
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;
_StubMsg.Buffer += sizeof(HRESULT);
}
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,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -