TYMED 枚举 (objidl.h)

指示数据传输中使用的存储介质的类型。 它们用于 STGMEDIUMFORMATETC 结构。

语法

typedef 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;

常数

 
TYMED_HGLOBAL
值:1
存储介质是全局内存句柄(HGLOBAL)。 使用GMEM_MOVEABLE标志分配全局句柄。 如果 STGMEDIUMpunkForRelease 成员 NULL,则目标进程应使用 GlobalFree 释放内存。
TYMED_FILE
值:2
存储介质是由路径标识的磁盘文件。 如果 STGMEDIUMpunkForRelease 成员 NULL,则目标进程应使用 OpenFile 删除文件。
TYMED_ISTREAM
值:4
存储介质是由 IStream 指针标识的流对象。 使用 ISequentialStream::Read 读取数据。 如果 STGMEDIUMpunkForRelease 成员未 NULL,则目标进程应使用 Release 来释放流组件。
TYMED_ISTORAGE
值:8
存储介质是由 IStorage 指针标识的存储组件。 数据位于此 IStorage 实例中包含的流和存储中。 如果 STGMEDIUMpunkForRelease 成员未 NULL,则目标进程应使用 Release 来释放存储组件。
TYMED_GDI
值:16
存储介质是 GDI 组件(HBITMAP)。 如果 STGMEDIUMpunkForRelease 成员 NULL,则目标进程应使用 DeleteObject 删除位图。
TYMED_MFPICT
值:32
存储介质是图元文件(METAFILEPICT)。 使用 GDI 函数访问图元文件的数据。 如果 STGMEDIUMpunkForRelease 成员 NULL,则目标进程应使用 DeleteMetaFile 删除位图。
TYMED_ENHMF
值:64
存储介质是增强型图元文件(HENHMETAFILE)。 如果 STGMEDIUMpunkForRelease 成员 NULL,则目标进程应使用 DeleteEnhMetaFile 删除位图。
TYMED_NULL
值:0
未传递任何数据。

言论

在数据传输操作期间,指定存储介质。 数据传输操作后必须释放此介质。 媒体的提供程序指示它在 STGMEDIUM 结构中提供的值中选择所有权方案。 pUnkForRelease 成员的 NULL 值表示代码接收正文可以释放介质。 非NULL 指针指定始终可以调用 ReleaseStgMedium 以释放介质。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
标头 objidl.h

另请参阅

FORMATETC

IAdviseSink

IDataObject

IOleCache

ReleaseStgMedium

STGMEDIUM