NdrGetUserMarshalInfo 函数 (rpcndr.h)
NdrGetUserMarshalInfo 函数为wire_marshal和user_marshal帮助程序函数提供了其他信息。
语法
RPC_STATUS NdrGetUserMarshalInfo(
unsigned long *pFlags,
unsigned long InformationLevel,
NDR_USER_MARSHAL_INFO *pMarshalInfo
);
参数
pFlags
由 RPC 传递给帮助程序函数的同名的指针。
InformationLevel
要接收的所需详细信息级别。 不同级别意味着不同的信息字段集。 目前仅定义了级别 1。
pMarshalInfo
内存缓冲区的地址,由应用程序提供,用于接收请求的信息。 缓冲区的大小必须至少与 InformationLevel 指示的信息结构一样大。
返回值
值 | 含义 |
---|---|
|
调用成功。 |
|
至少有一个参数无效。 |
|
当前封送处理缓冲区无效。 |
注解
NdrGetUserMarshalInfo 函数由应用程序<提供的wire_marshal或user_marshal帮助程序函数 () type>_UserSize、<type>_UserMarshal、<type>_UserUnmarshal和 <type>_UserFree调用,以接收有关调用状态的额外信息。 此函数的常见用途是获取封送处理缓冲区的大小,以便检查缓冲区结束条件。 发送大小不正确的数据是违反系统安全性的常用方法。
有关 NdrGetUserMarshalInfo 返回的信息的完整列表,请参阅 NDR_USER_MARSHAL_INFO。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows 2000 Server [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | rpcndr.h (包括 Rpc.h) |
Library | Rpcrt4.lib |
DLL | Rpcrt4.dll |