Fonction ReleaseStgMedium (ole2.h)
Libère le support de stockage spécifié.
Syntaxe
void ReleaseStgMedium(
LPSTGMEDIUM unnamedParam1
);
Paramètres
unnamedParam1
Valeur de retour
None
Remarques
La fonction ReleaseStgMedium appelle la méthode ou la fonction appropriée pour libérer le support de stockage spécifié. Utilisez cette fonction lors des opérations de transfert de données où les structures de support de stockage sont des paramètres, tels que IDataObject ::GetData ou IDataObject ::SetData. En plus d’identifier le type du support de stockage, cette structure spécifie la méthode Release appropriée pour libérer le support de stockage lorsqu’il n’est plus nécessaire.
Il est courant de passer un STGMEDIUM d’un corps de code à un autre, comme dans IDataObject ::GetData, dans lequel celui appelé peut allouer un support et le renvoyer à l’appelant. ReleaseStgMedium permet une certaine flexibilité quant à savoir si le corps récepteur du code est propriétaire du support ou si le fournisseur d’origine du support en est toujours propriétaire, auquel cas le code de réception doit informer le fournisseur qu’il peut libérer le support.
Lorsque le fournisseur d’origine du support est chargé de libérer le support, le fournisseur appelle ReleaseStgMedium, en spécifiant le support et le pointeur IUnknown approprié comme membre de la structure punkForRelease . Selon le type de support de stockage libéré, l’une des actions suivantes est effectuée, suivie d’un appel à la méthode IUnknown ::Release sur le pointeur IUnknown spécifié.
Moyenne | ReleaseStgMedium Action |
---|---|
TYMED_HGLOBAL | Aucun. |
TYMED_GDI | Aucun. |
TYMED_ENHMF | Aucun. |
TYMED_MFPICT | Aucun. |
TYMED_FILE | Libère la chaîne de nom de fichier à l’aide de mécanismes de gestion de mémoire standard. |
TYMED_ISTREAM | Appelle IStream ::Release. |
TYMED_ISTORAGE | Appelle IStorage ::Release. |
Le fournisseur indique que le récepteur du support est responsable de la libération du support en spécifiant NULL pour le membre de structure punkForRelease . Ensuite, le récepteur appelle ReleaseStgMedium, qui effectue un appel comme décrit dans le tableau suivant en fonction du type de support de stockage libéré.
Moyenne | ReleaseStgMedium Action |
---|---|
TYMED_HGLOBAL | Appelle la fonction GlobalFree sur le handle. |
TYMED_GDI | Appelle la fonction DeleteObject sur le handle. |
TYMED_ENHMF | Supprime le métafichier amélioré. |
TYMED_MFPICT | Le hMF qu’il contient est supprimé avec la fonction DeleteMetaFile ; puis le handle lui-même est passé à GlobalFree. |
TYMED_FILE | Libère le fichier disque en le supprimant. Libère la chaîne de nom de fichier à l’aide des mécanismes de gestion de la mémoire standard. |
TYMED_ISTREAM | Appelle IStream ::Release. |
TYMED_ISTORAGE | Appelle IStorage ::Release. |
Dans les deux cas, après l’appel à ReleaseStgMedium, le support de stockage spécifié n’est pas valide et ne peut plus être utilisé.
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 | ole2.h |
Bibliothèque | Ole32.lib |
DLL | Ole32.dll |
Ensemble d’API | ext-ms-win-com-ole32-l1-1-3 (introduit dans Windows 10, version 10.0.10240) |