Méthode ICallFrame ::ReleaseMarshalData (callobj.h)
Libère les ressources qui sont conservées par les pointeurs d’interface résidant dans un paquet de données marshalées. Cette méthode recherche tous les pointeurs d’interface dans le paquet et appelle la fonction CoReleaseMarshalData sur chacun d’eux.
Syntaxe
HRESULT ReleaseMarshalData(
[in] PVOID pBuffer,
[in] ULONG cbBuffer,
[in] ULONG ibFirstRelease,
[in] RPCOLEDATAREP dataRep,
[in] CALLFRAME_MARSHALCONTEXT *pcontext
);
Paramètres
[in] pBuffer
Pointeur vers la mémoire tampon contenant les valeurs [out] marshalées.
[in] cbBuffer
Taille de la mémoire tampon, en octets.
[in] ibFirstRelease
Premier octet de la mémoire tampon, qui doit être libéré. La valeur zéro implique que les pointeurs d’interface dans l’ensemble de la mémoire tampon doivent être libérés. Les pointeurs d’interface marshalés sont supposés avoir été libérés par un autre mécanisme.
[in] dataRep
Représentation de données avec laquelle les données ont été marshalées.
[in] pcontext
Pointeur vers la structure CALLFRAME_MARSHALCONTEXT contenant des informations de contexte sur la façon dont le marshaling est effectué.
Valeur retournée
Cette méthode peut retourner les valeurs suivantes.
Code de retour | Description |
---|---|
|
La commande s'est correctement terminée. |
|
Une erreur inattendue s’est produite. |
Remarques
La méthode ReleaseMarshalData doit être appelée une seule fois pour propre les ressources contenues dans une mémoire tampon marshalée. Toutefois, lorsque l’énumération MSHLFLAGS est définie sur MSHLFLAGS_NORMAL, cette opération est effectuée automatiquement lors du marshaling et n’a donc pas besoin d’être effectuée explicitement.
Cette méthode peut fonctionner correctement sur les paramètres [in] et [out] marshalés.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | callobj.h |