Compartilhar via


TYMED (Compact 2013)

3/26/2014

This enumeration contains values used in the STGMEDIUM structure.

Syntax

typedef enum tagTYMED {
  TYMED_HGLOBAL = 1,
  TYMED_FILE = 2,
  TYMED_ISTREAM = 4,
  TYMED_ISTORAGE = 8,
  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 STGMEDIUMpunkForRelease 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 STGMEDIUMpunkForRelease 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 ISequentialStream::Read to read the data. If the STGMEDIUMpunkForRelease 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 STGMEDIUMpunkForRelease member is NULL, the destination process should use IStorage::Release to release the storage component.
  • TYMED_NULL
    No data is being passed.

Remarks

The values TYMED_GDI, TYMED_MFPICT, and TYMED_ENHMF are not supported.

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.

Requirements

Header

objidl.h

See Also

Reference

OLE Structures
STGMEDIUM