NdrPointerUnmarshall 函数 (rpcndr.h)

NdrPointerUnmarshall 函数取消对指向任何对象的顶级指针进行封送。 嵌入在结构、数组或联合中的指针直接调用 NdrPointerUnmarshall

语法

unsigned char * NdrPointerUnmarshall(
  [in, out] PMIDL_STUB_MESSAGE pStubMsg,
  [in]      unsigned char      **ppMemory,
  [in]      PFORMAT_STRING     pFormat,
  [in]      unsigned char      fMustAlloc
);

参数

[in, out] pStubMsg

指向保持 RPC 存根当前状态 的MIDL_STUB_MESSAGE 结构的指针。 结构仅供内部使用;请勿修改。

[in] ppMemory

指向指针将取消封存的内存的指针。 有关 RPC 中的缓冲区溢出保护的信息,请参阅 MCCP 缓冲区保护: http://msdn.microsoft.com/en-us/library/ff621497(VS.85).aspx

[in] pFormat

指向格式字符串说明的指针。

[in] fMustAlloc

未使用。

返回值

成功后返回 NULL 。 如果发生错误,函数将引发以下异常代码之一。

错误 说明
RPC_BAD_STUB_DATA或RPC_X_INVALID_BOUND 网络缓冲区不正确。
RPC_S_OUT_OF_MEMORY 系统内存不足。
STATUS_ACCESS_VIOLATION 发生访问冲突。
RPC_S_INTERNAL_ERROR RPC 中出错。

注解

此函数用于FC_RP、FC_UP、FC_FP FC_OP格式字符串。

要求

要求
最低受支持的客户端 Windows 2000 专业版 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 Windows
标头 rpcndr.h (包括 Rpc.h)
Library Rpcrt4.lib
DLL Rpcrt4.dll