Freigeben über


NdrPointerUnmarshall-Funktion (rpcndr.h)

Mit der Funktion NdrPointerUnmarshall wird ein Zeiger der obersten Ebene auf alles entfernt. Zeiger, die in Strukturen, Arrays oder Unions eingebettet sind, rufen NdrPointerUnmarshall direkt auf.

Syntax

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

Parameter

[in, out] pStubMsg

Zeiger auf eine MIDL_STUB_MESSAGE-Struktur, die den aktuellen status des RPC-Stubs verwaltet. Die Struktur ist nur für den internen Gebrauch bestimmt. nicht ändern.

[in] ppMemory

Zeiger auf den Speicher, in dem der Zeiger nicht synchronisiert wird. Informationen zu Pufferüberlaufschutz in RPC finden Sie unter MCCP-Pufferschutz: http://msdn.microsoft.com/en-us/library/ff621497(VS.85).aspx

[in] pFormat

Zeiger auf die Formatzeichenfolgenbeschreibung.

[in] fMustAlloc

Nicht verwendet.

Rückgabewert

Gibt null zurück, wenn der Erfolg erfolgreich ist. Wenn ein Fehler auftritt, löst die Funktion einen der folgenden Ausnahmecodes aus.

Fehler BESCHREIBUNG
RPC_BAD_STUB_DATA oder RPC_X_INVALID_BOUND Der Netzwerkpuffer ist falsch.
RPC_S_OUT_OF_MEMORY Das System hat nicht genügend Arbeitsspeicher.
STATUS_ACCESS_VIOLATION Es ist eine Zugriffsverletzung aufgetreten.
RPC_S_INTERNAL_ERROR In RPC ist ein Fehler aufgetreten.

Hinweise

Diese Funktion wird für FC_RP-, FC_UP-, FC_FP- FC_OP-Formatzeichenfolgen verwendet.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile rpcndr.h (include Rpc.h)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll