CoReleaseMarshalData, fonction (combaseapi.h)
Détruit un paquet de données précédemment marshalé.
Syntaxe
HRESULT CoReleaseMarshalData(
[in] LPSTREAM pStm
);
Paramètres
[in] pStm
Pointeur vers le flux qui contient le paquet de données à détruire. Voir IStream.
Valeur retournée
Cette fonction peut retourner les valeurs de retour standard E_FAIL, E_INVALIDARG, E_OUTOFMEMORY et E_UNEXPECTED, ainsi que les valeurs suivantes.
Code de retour | Description |
---|---|
|
Le paquet de données a été détruit avec succès. |
|
Erreur liée au paramètre pStm . |
|
La fonction CoInitialize ou OleInitialize n’a pas été appelée sur le thread actuel avant l’appel de cette fonction. |
Remarques
Remarque de sécurité : l’appel de cette méthode avec des données non approuvées est un risque de sécurité. Appelez cette méthode avec des données approuvées uniquement.
- La fonction lit un CLSID à partir du flux.
- Si l’implémentation de marshaling par défaut de COM est utilisée, la fonction obtient un pointeur IMarshal vers un instance du unmarshaler standard. Si le marshaling personnalisé est utilisé, la fonction crée un proxy en appelant la fonction CoCreateInstance, en transmettant le CLSID qu’elle a lu à partir du flux et en demandant un pointeur d’interface IMarshal vers le proxy nouvellement créé.
- À l’aide du pointeur d’interface IMarshal qu’elle a acquis, la fonction appelle IMarshal ::ReleaseMarshalData.
- Une tentative de démarshaler le paquet de données a été effectuée, mais elle a échoué.
- Un paquet de données marshalé a été supprimé d’une table globale.
Notez que vous n’avez pas besoin d’appeler CoReleaseMarshalData après un appel réussi de la fonction CoUnmarshalInterface ; cette fonction libère les données marshal dans le cadre du traitement qu’elle effectue.
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 | combaseapi.h (inclure Objbase.h) |
Bibliothèque | Ole32.lib |
DLL | Ole32.dll |