次の方法で共有


TYMED 列挙 (objidl.h)

データ転送で使用されているストレージ メディアの種類を示します。 これらは、STGMEDIUM または FORMATETC 構造体 で使用されます。

構文

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 を する