Fonction NdrPointerUnmarshall (rpcndr.h)
La fonction NdrPointerUnmarshall démarshalle un pointeur de niveau supérieur vers n’importe quoi. Les pointeurs incorporés dans des structures, des tableaux ou des unions appellent directement NdrPointerUnmarshall .
Syntaxe
unsigned char * NdrPointerUnmarshall(
[in, out] PMIDL_STUB_MESSAGE pStubMsg,
[in] unsigned char **ppMemory,
[in] PFORMAT_STRING pFormat,
[in] unsigned char fMustAlloc
);
Paramètres
[in, out] pStubMsg
Pointeur vers une structure MIDL_STUB_MESSAGE qui maintient la status actuelle du stub RPC. La structure est destinée uniquement à un usage interne ; ne modifiez pas.
[in] ppMemory
Pointeur vers la mémoire où le pointeur ne sera pasmarshalled. Consultez Protection de mémoire tampon MCCP pour plus d’informations sur les protections contre les dépassements de mémoire tampon dans RPC : http://msdn.microsoft.com/en-us/library/ff621497(VS.85).aspx
[in] pFormat
Pointeur vers la description de la chaîne de format.
[in] fMustAlloc
Inutilisé.
Valeur retournée
Retourne la valeur NULL en cas de réussite. Si une erreur se produit, la fonction lève l’un des codes d’exception suivants.
Erreur | Description |
---|---|
RPC_BAD_STUB_DATA ou RPC_X_INVALID_BOUND | La mémoire tampon réseau est incorrecte. |
RPC_S_OUT_OF_MEMORY | La mémoire du système est insuffisante. |
STATUS_ACCESS_VIOLATION | Une violation d’accès s’est produite. |
RPC_S_INTERNAL_ERROR | Une erreur s’est produite dans RPC. |
Remarques
Cette fonction est utilisée pour les chaînes de format FC_RP, FC_UP, FC_FP FC_OP.
Configuration requise
Condition requise | Valeur |
---|---|
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 |