IDataObject インターフェイス (objidl.h)

データ転送とデータの変更の通知を有効にします。 データ転送方法では、転送されるデータの形式と、データの転送に使用されるメディアを指定します。 必要に応じて、特定のターゲット デバイスに対してデータをレンダリングできます。 IDataObject インターフェイスは、データを取得および格納するためのメソッドに加えて、使用可能な形式を列挙し、変更通知を処理するためのアドバイザリ シンクへの接続を管理するためのメソッドを指定します。

data object という用語は、IDataObject インターフェイスの実装をサポートするすべてのオブジェクトを意味します。 実装は、データ オブジェクトの実行に必要な内容によって異なります。一部のデータ オブジェクトでは、 オブジェクトでサポートされていない特定のメソッドの実装は、単に E_NOTIMPL の戻り値になる可能性があります。 たとえば、一部のデータ オブジェクトでは、呼び出し元がデータを送信できません。 その他のデータ オブジェクトは、アドバイザリ接続と変更通知をサポートしていません。 ただし、変更通知をサポートするデータ オブジェクトの場合、OLE はデータ アドバイス ホルダーと呼ばれるオブジェクトを提供します。 このホルダーへのインターフェイス ポインターは、ヘルパー関数 CreateDataAdviseHolder の呼び出しを通じて使用できます。 データ オブジェクトには、それぞれ独自の属性セットを持つ複数の接続を持つことができます。 OLE データ アドバイス ホルダーは、これらの接続を管理し、適切な通知を送信するタスクを簡略化します。

継承

IDataObject インターフェイスは、IUnknown インターフェイスから継承されます。 IDataObject には、次の種類のメンバーもあります。

メソッド

IDataObject インターフェイスには、これらのメソッドがあります。

 
IDataObject::D Advise

データ オブジェクトとアドバイズ シンクの間に接続を作成するために、アドバイズ シンクをサポートする オブジェクトによって呼び出されます。 これにより、アドバイズ シンクにオブジェクトのデータの変更が通知されます。
IDataObject::D Unadvise

以前に設定された通知接続を破棄します。
IDataObject::EnumDAdvise

現在のアドバイザリ コネクションを列挙するために使用できるオブジェクトを作成します。
IDataObject::EnumFormatEtc

データ オブジェクトでサポートされている形式を列挙する オブジェクトを作成します。
IDataObject::GetCanonicalFormatEtc

異なる可能性があるが論理的に等価な FORMATETC 構造体を提供します。 このメソッドを使用して、2 つの異なる FORMATETC 構造体が同じデータを返すかどうかを判断し、重複するレンダリングが不要になります。
IDataObject::GetData

ソース データ オブジェクトからデータを取得するために、データ コンシューマーによって呼び出されます。
IDataObject::GetDataHere

ソース データ オブジェクトからデータを取得するために、データ コンシューマーによって呼び出されます。 このメソッドは、呼び出し元が指定されたストレージ メディアを割り当てて解放する必要がある点で、GetData メソッドとは異なります。
IDataObject::QueryGetData

データ オブジェクトが指定したとおりにデータをレンダリングできるかどうかを判断します。 貼り付け操作またはドロップ操作を試みるオブジェクトは、IDataObject::GetData を呼び出す前にこのメソッドを呼び出して、操作が成功したかどうかを示すことができます。
IDataObject::SetData

このメソッドを実装するオブジェクトにデータを転送するために、データ ソースを含む オブジェクトによって呼び出されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー objidl.h