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
存储介质是 HBITMAP) (GDI 组件。 如果 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