Fonction NdrConformantArrayUnmarshall (rpcndr.h)
La fonction NdrConformantArrayUnmarshall désactive un tableau conforme.
Syntaxe
unsigned char * NdrConformantArrayUnmarshall(
[in] PMIDL_STUB_MESSAGE pStubMsg,
[out] unsigned char **ppMemory,
[in] PFORMAT_STRING pFormat,
[in] unsigned char fMustAlloc
);
Paramètres
[in] pStubMsg
Pointeur vers une structure MIDL_STUB_MESSAGE qui maintient la status actuelle du stub RPC. Cette structure est destinée uniquement à un usage interne et ne doit pas être modifiée.
[out] ppMemory
Adressez-vous à un pointeur vers la mémoire tampon où le tableau conforme n’est pas délimité. Si la valeur est null ou si fMustAlloc a la valeur TRUE, le stub alloue la mémoire.
[in] pFormat
Pointeur vers la description de la chaîne de format.
[in] fMustAlloc
Indicateur qui spécifie si le stub doit allouer la mémoire dans laquelle le tableau conforme doit être marshalé. Spécifiez TRUE si RPC doit allouer ppMemory.
Valeur retournée
Retourne null en cas de réussite. Si une erreur se produit, la fonction lève l’un des codes d’exception suivants.
Code de retour | Description |
---|---|
|
Le réseau est incorrect. |
|
Le réseau est incorrect. |
|
La mémoire du système est insuffisante. |
|
Une violation d’accès s’est produite. |
|
Une erreur s’est produite dans RPC. |
Notes
La fonction NdrConformantArrayUnmarshall est utilisée par le stub côté client et côté serveur pour démarshaller un tableau conforme. Le stub peut allouer de la mémoire si nécessaire. Par exemple, pArray dans l’exemple de cette page pointe vers un tableau conforme.
NdrConformantArrayUnmarshall ne doit être appelé que dans le contexte d’un stub RPC, une fois que le stub du client ou du serveur a été initialisé.
Exemples
void ConfArray([in] long size,
[in,size_is(size)] long *pArray); // conformant array
Spécifications
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | rpcndr.h (inclure Rpc.h) |
Bibliothèque | Rpcrt4.lib |
DLL | Rpcrt4.dll |