TYMED
The TYMED
enumeration values indicate the type of storage medium being used in a data
transfer. They are used in the STGMEDIUM or FORMATETC8CSQ18 structures.
typedef [transmit_as(long)] enum tagTYMED
{
TYMED_HGLOBAL = 1;
TYMED_FILE = 2;
TYMED_ISTREAM = 4;
TYMED_ISTORAGE = 8;
TYMED_GDI = 16;
TYMED_MFPICT = 32;
TYMED_ENHMF = 64;
TYMED_NULL = 0
} TYMED;
Elements
TYMED_HGLOBAL
The storage
medium is a global memory handle (HGLOBAL). Allocate the global handle with the
GMEM_SHARE flag. If the STGMEDIUM punkForRelease member is NULL, the
destination process should use GlobalFree to release the memory.
TYMED_FILE
The storage
medium is a disk file identified by a path. If the STGMEDIUM punkForRelease
member is NULL, the destination process should use OpenFile to delete
the file.
TYMED_ISTREAM
The storage
medium is a stream object identified by an IStream pointer. Use IStream::Read to read the data. If the STGMEDIUM punkForRelease
member is NULL, the destination process should use IStream::Release to
release the stream component.
TYMED_ISTORAGE
The storage
medium is a storage component identified by an IStorage pointer. The data is in the
streams and storages contained by this IStorage instance. If the STGMEDIUM
punkForRelease member is NULL, the destination process should use IStorage::Release
to release the storage component.
TYMED_GDI
The storage
medium is a GDI component (HBITMAP). If the STGMEDIUM punkForRelease
member is NULL, the destination process should use DeleteObject to
delete the bitmap.
TYMED_MFPICT
The storage
medium is a metafile (HMETAFILE). Use the Windows or WIN32 functions to access
the metafile s data. If the STGMEDIUM punkForRelease member is
NULL, the destination process should use DeleteMetaFile to delete the
bitmap.
TYMED_ENHMF
The storage
medium is an enhanced metafile. If the STGMEDIUM punkForRelease
member is NULL, the destination process should use DeleteEnhMetaFile to
delete the bitmap.
TYMED_NULL
No data is
being passed.
Remarks
During data
transfer operations, a storage medium is specified. This medium must be
released after the data transfer operation. The provider of the medium
indicates its choice of ownership scenarios in the value it provides in the STGMEDIUM structure. A NULL value for
the IUNKNOWN field indicates that the receiving body of code owns and
can free the medium. A non-NULL pointer specifies that ReleaseStgMedium can always be called to
free the medium.
See Also