Funzione NdrConformantArrayUnmarshall (rpcndr.h)

La funzione NdrConformantArrayUnmarshall annulla una matrice conforme.

Sintassi

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

Parametri

[in] pStubMsg

Puntatore a una struttura MIDL_STUB_MESSAGE che mantiene lo stato corrente dello stub RPC. Questa struttura è destinata solo all'uso interno e non deve essere modificata.

[out] ppMemory

Indirizzo a un puntatore al buffer in cui la matrice conforme non vienemarshalled. Se impostato su Null o se fMustAlloc è impostato su TRUE, lo stub alloca la memoria.

[in] pFormat

Puntatore alla descrizione della stringa di formato.

[in] fMustAlloc

Flag che specifica se lo stub deve allocare la memoria in cui deve essere eseguita la marshalling della matrice conforme. Specificare TRUE se RPC deve allocare ppMemory.

Valore restituito

Restituisce Null al termine dell'operazione. Se si verifica un errore, la funzione genera uno dei codici di eccezione seguenti.

Codice restituito Descrizione
RPC_BAD_STUB_DATA
La rete non è corretta.
RPC_X_INVALID_BOUND
La rete non è corretta.
RPC_S_OUT_OF_MEMORY
Il sistema non è in memoria.
STATUS_ACCESS_VIOLATION
Si è verificata una violazione di accesso.
RPC_S_INTERNAL_ERROR
Si è verificato un errore in RPC.

Commenti

La funzione NdrConformantArrayUnmarshall viene usata sia dal client che dallo stub lato server per annullare unmarshall di una matrice conforme. Lo stub potrebbe allocare memoria in base alle esigenze. Ad esempio, pArray nell'esempio in questa pagina punta a una matrice conforme.

NdrConformantArrayUnmarshall deve essere chiamato solo nel contesto di uno stub RPC, dopo l'inizializzazione del client o del server stub.

Esempio

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

Requisiti

   
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione rpcndr.h (include Rpc.h)
Libreria Rpcrt4.lib
DLL Rpcrt4.dll