Freigeben über


NdrConformantArrayUnmarshall-Funktion (rpcndr.h)

Die Funktion NdrConformantArrayUnmarshall hebt dieMarmarshalierung eines konformen Arrays auf.

Syntax

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

Parameter

[in] pStubMsg

Zeiger auf eine MIDL_STUB_MESSAGE-Struktur, die den aktuellen status des RPC-Stubs verwaltet. Diese Struktur ist nur für den internen Gebrauch vorgesehen und sollte nicht geändert werden.

[out] ppMemory

Adressieren Sie einen Zeiger auf den Puffer, in dem das konforme Array nicht zugeordnet ist. Wenn auf NULL festgelegt oder fMustAlloc auf TRUE festgelegt ist, ordnet der Stub den Arbeitsspeicher zu.

[in] pFormat

Zeiger auf die Formatzeichenfolgenbeschreibung.

[in] fMustAlloc

Flag, das angibt, ob der Stub den Arbeitsspeicher zuordnen muss, in den das konforme Array ge marshallt werden soll. Geben Sie TRUE an, wenn RPC ppMemory zuordnen muss.

Rückgabewert

Gibt bei Erfolg NULL zurück. Wenn ein Fehler auftritt, löst die Funktion einen der folgenden Ausnahmecodes aus.

Rückgabecode Beschreibung
RPC_BAD_STUB_DATA
Das Netzwerk ist falsch.
RPC_X_INVALID_BOUND
Das Netzwerk 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

Die Funktion NdrConformantArrayUnmarshall wird sowohl vom client- als auch vom serverseitigen Stub verwendet, um ein konformes Array zu entmarshallen. Der Stub kann bei Bedarf Arbeitsspeicher zuordnen. Beispielsweise verweist pArray im Beispiel auf dieser Seite auf ein konformes Array.

NdrConformantArrayUnmarshall sollte nur im Kontext eines RPC-Stubs aufgerufen werden, nachdem der Client- oder Serverstub initialisiert wurde.

Beispiele

void  ConfArray([in] long size,
        [in,size_is(size)] long *pArray);         // conformant array

Anforderungen

   
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