Compartir a través de


Función ReleaseStgMedium (ole2.h)

Libera el medio de almacenamiento especificado.

Sintaxis

void ReleaseStgMedium(
       LPSTGMEDIUM unnamedParam1
);

Parámetros

unnamedParam1

Valor devuelto

None

Observaciones

La función ReleaseStgMedium llama al método o función adecuado para liberar el medio de almacenamiento especificado. Use esta función durante las operaciones de transferencia de datos en las que las estructuras medianas de almacenamiento son parámetros, como IDataObject::GetData o IDataObject::SetData. Además de identificar el tipo del medio de almacenamiento, esta estructura especifica el método Release adecuado para liberar el medio de almacenamiento cuando ya no es necesario.

Es habitual pasar un STGMEDIUM de un cuerpo de código a otro, como en IDataObject::GetData, en el que el llamado puede asignar un medio y devolverlo al autor de la llamada. ReleaseStgMedium permite flexibilidad en si el cuerpo receptor de código posee el medio, o si el proveedor original del medio lo posee, en cuyo caso el código receptor necesita informar al proveedor de que puede liberar el medio.

Cuando el proveedor original del medio es responsable de liberar el medio, el proveedor llama a ReleaseStgMedium, especificando el medio y el puntero IUnknown adecuado como miembro de estructura punkForRelease . Según el tipo de medio de almacenamiento que se libere, se realiza una de las siguientes acciones, seguida de una llamada al método IUnknown::Release en el puntero IUnknown especificado.

Media Acción ReleaseStgMedium
TYMED_HGLOBAL Ninguno.
TYMED_GDI Ninguno.
TYMED_ENHMF Ninguno.
TYMED_MFPICT Ninguno.
TYMED_FILE Libera la cadena de nombre de archivo mediante mecanismos de administración de memoria estándar.
TYMED_ISTREAM Llama a IStream::Release.
TYMED_ISTORAGE Llama a IStorage::Release.
 

El proveedor indica que el receptor del medio es responsable de liberar el medio especificando NULL para el miembro de estructura punkForRelease . A continuación, el receptor llama a ReleaseStgMedium, que realiza una llamada como se describe en la tabla siguiente en función del tipo de medio de almacenamiento que se libera.

Media Acción ReleaseStgMedium
TYMED_HGLOBAL Llama a la función GlobalFree en el identificador.
TYMED_GDI Llama a la función DeleteObject en el identificador.
TYMED_ENHMF Elimina el metarchivo mejorado.
TYMED_MFPICT El hMF que contiene se elimina con la función DeleteMetaFile ; después, el propio identificador se pasa a GlobalFree.
TYMED_FILE Libera el archivo de disco eliminándolo. Libera la cadena de nombre de archivo mediante los mecanismos de administración de memoria estándar.
TYMED_ISTREAM Llama a IStream::Release.
TYMED_ISTORAGE Llama a IStorage::Release.
 

En cualquier caso, después de la llamada a ReleaseStgMedium, el medio de almacenamiento especificado no es válido y ya no se puede usar.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ole2.h
Library Ole32.lib
Archivo DLL Ole32.dll
Conjunto de API ext-ms-win-com-ole32-l1-1-3 (introducido en Windows 10, versión 10.0.10240)

Consulte también

STGMEDIUM