IPortableDevice インターフェイス (portabledeviceapi.h)
IPortableDevice インターフェイスは、ポータブル デバイスへのアクセスを提供します。
このインターフェイスを作成して開くには、最初に CLSID_PortableDeviceFTM または CLSID_PortableDevice を使用して CoCreateInstance を呼び出して IPortableDevice インターフェイスを取得し、Open を呼び出してデバイスへの接続を開きます。
継承
IPortableDevice インターフェイスは、IUnknown インターフェイスから継承されます。 IPortableDevice には、次の種類のメンバーもあります。
メソッド
IPortableDevice インターフェイスには、これらのメソッドがあります。
IPortableDevice::Advise Advise メソッドは、デバイス イベントを受信するアプリケーション定義のコールバックを登録します。 |
IPortableDevice::Cancel Cancel メソッドは、このインターフェイスで保留中の操作を取り消します。 |
IPortableDevice::Capabilities Capabilities メソッドは、ポータブル デバイスの機能のクエリに使用されるインターフェイスを取得します。 |
IPortableDevice::Close Close メソッドは、デバイスとの接続を閉じます。 |
IPortableDevice::Content Content メソッドは、デバイス上のオブジェクトにアクセスするために使用できるインターフェイスを取得します。 |
IPortableDevice::GetPnPDeviceID GetPnPDeviceID メソッドは、アプリケーションがデバイスを開くために使用したプラグ アンド プレイ (PnP) デバイス識別子を取得します。 |
IPortableDevice::Open Open メソッドは、アプリケーションとデバイス間の接続を開きます。 |
IPortableDevice::SendCommand SendCommand メソッドは、デバイスにコマンドを送信し、同期的に結果を取得します。 |
IPortableDevice::Unadvise Unadvise メソッドは、クライアントがコールバック通知を受信できないように登録を解除します。 以前に Advise を呼び出した場合は、このメソッドを呼び出す必要があります。 |
解説
クライアント インターフェイスは、任意の WPD オブジェクトに使用するように設計されています。アプリケーションによって参照されるオブジェクトごとに新しいインスタンスを作成する必要はありません。 アプリケーションが IPortableDevice インターフェイスのインスタンスを開いた後、必要なその他の WPD クライアント インターフェイスを開いてキャッシュする必要があります。
Windows 7 の場合、 IPortableDevice では CoCreateInstance 用に 2 つの CLSID がサポートされています。 CLSID_PortableDevice は、フリースレッド マーシャラーを集計しない IPortableDevice ポインターを返します。 CLSID_PortableDeviceFTM は、フリースレッド マーシャラーを集計する IPortableDevice ポインターを返す新しい CLSID です。 それ以外の場合は、両方のポインターで同じ機能がサポートされます。
シングル スレッド アパートメントに存在するアプリケーションでは 、インターフェイス ポインター マーシャリングのオーバーヘッドが排除されるため、CLSID_PortableDeviceFTMを使用する必要があります。 CLSID_PortableDevice は、レガシ アプリケーションでは引き続きサポートされています。
必要条件
対象プラットフォーム | Windows |
ヘッダー | portabledeviceapi.h |