NdrInterfacePointerUnmarshall function (rpcndr.h)

The NdrInterfacePointerUnmarshall function unmarshalls the data referenced by the interface pointer from the network buffer to memory.

Syntax

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

Parameters

[in, out] pStubMsg

Pointer to a MIDL_STUB_MESSAGE structure that maintains the current status of the RPC stub. Structure is for internal use only; do not modify.

[out] ppMemory

Pointer to a pointer to the unmarshalled interface pointer.

[in] pFormat

Pointer to the format string description.

[in] fMustAlloc

Unused.

Return value

Returns NULL upon success. If an error occurs, the function throws one of the following exception codes. In addition, the function can throw exception codes from CoUnmarshalInterface.

Error Description
RPC_BAD_STUB_DATA The network buffer is incorrect.
RPC_S_OUT_OF_MEMORY The system is out of memory.
STATUS_ACCESS_VIOLATION An access violation occurred.
RPC_S_INTERNAL_ERROR An error occurred in RPC.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps | UWP apps]
Minimum supported server Windows 2000 Server [desktop apps | UWP apps]
Target Platform Windows
Header rpcndr.h (include Rpc.h)
Library Rpcrt4.lib
DLL Rpcrt4.dll