MIDL_STUB_DESC 結構 (rpcndr.h)
MIDL_STUB_DESC結構是 MIDL 產生的結構,其中包含客戶端與伺服器之間 RPC 呼叫的介面存根相關信息。
語法
typedef struct _MIDL_STUB_DESC {
void *RpcInterfaceInformation;
void * )(size_t) *(pfnAllocate;
void()(void *) * pfnFree;
union {
handle_t *pAutoHandle;
handle_t *pPrimitiveHandle;
PGENERIC_BINDING_INFO pGenericBindingInfo;
} IMPLICIT_HANDLE_INFO;
const NDR_RUNDOWN *apfnNdrRundownRoutines;
const GENERIC_BINDING_ROUTINE_PAIR *aGenericBindingRoutinePairs;
const EXPR_EVAL *apfnExprEval;
const XMIT_ROUTINE_QUINTUPLE *aXmitQuintuple;
const unsigned char *pFormatTypes;
int fCheckBounds;
unsigned long Version;
MALLOC_FREE_STRUCT *pMallocFreeStruct;
long MIDLVersion;
const COMM_FAULT_OFFSETS *CommFaultOffsets;
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
ULONG_PTR mFlags;
const NDR_CS_ROUTINES *CsRoutineTables;
void *ProxyServerInfo;
const NDR_EXPR_DESC *pExprInfo;
} MIDL_STUB_DESC;
成員
RpcInterfaceInformation
針對伺服器端的非物件 RPC 介面,它會指向 RPC 伺服器介面結構。 在用戶端上,它會指向 RPC 用戶端介面結構。 物件介面為 Null。
pfnAllocate
存根要使用的記憶體配置函式。 針對非物件介面 設定為 midl_user_allocate ,並針對物件介面設定 為 NdrOleAllocate 。
pfnFree
存根要使用的無記憶體函式。 針對非物件介面 設定為 midl_user_free ,並針對物件介面設定 為 NdrOleFree 。
IMPLICIT_HANDLE_INFO
等位包含下列其中一個句柄。
IMPLICIT_HANDLE_INFO.pAutoHandle
RPC 呼叫之隱含自動句柄的指標。
IMPLICIT_HANDLE_INFO.pPrimitiveHandle
RPC 呼叫之隱含基本句柄的指標。
IMPLICIT_HANDLE_INFO.pGenericBindingInfo
隱含泛型句柄相關信息的指標。
apfnNdrRundownRoutines
內容句柄取消函式的陣列。
aGenericBindingRoutinePairs
要系結和取消系結隱含泛型句柄之函式配對的函式指標陣列。
apfnExprEval
表達式評估工具函式的函數指標數位列,用來評估 MIDL 複雜一致性和不同的描述。 例如, size_is ( param1 + param2) 。
aXmitQuintuple
用戶定義 transmit_as 和 represent_as 型別之函式指標陣列的陣列。
pFormatTypes
類型格式描述的指標。
fCheckBounds
描述使用者指定的 /error MIDL 編譯程式選項的旗標。
Version
存根所需的 NDR 版本。
pMallocFreeStruct
包含配置和可用函式指標之MALLOC_FREE_STRUCT結構的指標。 如果指定 enable_allocate MIDL 屬性, 請使用 。
MIDLVersion
用來編譯 .idl 檔案的 MIDL 編譯程式版本。
CommFaultOffsets
具有 comm_status 或 fault_status 屬性之參數的堆疊位移陣列。
aUserMarshalQuadruple
用戶定義user_marshal和wire_marshal類型的函式指標陣列。
NotifyRoutineTable
指定 通知 或 notify_flag 屬性之方法的通知函式指標數位。
mFlags
描述存根屬性的旗標
值 | 意義 |
---|---|
|
如果存根支援多個傳輸語法,請設定 。 |
|
如果介面包含回呼函式,請設定 。 |
|
如果介面包含使用管道的方法,請設定 。 |
CsRoutineTables
未使用的。
ProxyServerInfo
pExprInfo
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
標頭 | rpcndr.h (包含 Rpc.h) |