NdrPointerUnmarshall function
The NdrPointerUnmarshall function unmarshalls a top level pointer to anything. Pointers embedded in structures, arrays, or unions call NdrPointerUnmarshall directly.
Syntax
RPCRTAPI unsigned char* RPC_ENTRY NdrPointerUnmarshall( _Inout_ PMIDL_STUB_MESSAGE pStubMsg, _In_ unsigned char **pMemory, _In_ PFORMAT_STRING pFormat, _In_ unsigned char fSkipRefCheck );
Parameters
- pStubMsg [in, out]
-
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.
- pMemory [in]
-
Pointer to memory where pointer will be unmarshalled. Please see MCCP Buffer Protection for information on buffer overrun protections in RPC: http://msdn.microsoft.com/en-us/library/ff621497(VS.85).aspx
- pFormat [in]
-
Pointer to the format string description.
- fSkipRefCheck [in]
-
Unused.
Return value
Returns NULL upon success. If an error occurs, the function throws one of the following exception codes.
| Error | Description |
|---|---|
| RPC_BAD_STUB_DATA or RPC_X_INVALID_BOUND | 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. |
Remarks
This function is used for FC_RP, FC_UP, FC_FP, FC_OP format strings.
Requirements
|
Minimum supported client |
Windows 2000 Professional [desktop apps | Windows Store apps] |
|---|---|
|
Minimum supported server |
Windows 2000 Server [desktop apps | Windows Store apps] |
|
Header |
|
|
Library |
|
|
DLL |
|