アプリケーションのインターフェイス
このセクションでは、Windows Media Device Manager SDK を使用してデバイスと通信するためにアプリケーションによって使用または実装されるインターフェイスについて説明します。 ここで使用する "アプリケーション" という用語は、デスクトップ コンピューター上に存在し、接続されたポータブル デバイスとの高度な通信を必要とする実行可能ファイル、プラグイン、または COM オブジェクトを意味します。 これには、メディア プレーヤー アプリケーション、Windows Media Player プラグイン (ポータブル デバイスへの直接アクセスが必要な場合)、または再生カウント測定 COM オブジェクトを含めることができます。
これらのインターフェイスの一部はアプリケーションによって実装され、他のインターフェイスはアプリケーションによって呼び出されます。 各インターフェイスのドキュメントは、実装されているか呼び出されるか (実装されている場合は省略可能か必須かを示します)。
アプリケーションでは、次のインターフェイスまたはクラスが使用されます。
インターフェイスまたはクラス | 形容 |
---|---|
CSecureChannelClient クラス | アプリケーションが自身を認証し、データの暗号化と暗号化解除を行い、MAC を作成できるようにするヘルパー クラス。 |
IWMDeviceManagerの | アプリケーションの最上位レベルの Windows Media Device Manager インターフェイス。 |
IWMDeviceManager2の | 高度な列挙メソッドやその他のメソッドを提供することで、IWMDeviceManager 拡張します。 |
IWMDeviceManager3の | デバイス列挙設定を設定するメソッドを提供することによって、IWMDeviceManager2 インターフェイスを拡張します。 |
IWMDMDeviceの | 1 つのポータブル デバイスを調べて探索するメソッドを提供します。 |
IWMDMDevice2の | デバイス サポートされているビデオ形式の取得、名前によるストレージの検索、およびプロパティ ページの使用を可能にすることで、IWMDMDevice を拡張します。 |
IWMDMDevice3の | デバイス プロパティのクエリを実行するメソッド、デバイス I/O コントロール コードを送信するメソッド、およびストレージを検索してデバイス形式の機能を取得するアップグレードされたメソッドを提供することで、IWMDMDevice2 を拡張します。 |
IWMDMDeviceControlの | デバイスを制御するためのメソッドを提供します。 |
IWMDMDeviceSessionの | 複数の操作を 1 つのセッションにバンドルすることで、デバイス操作の効率を向上させる |
IWMDMEnumDeviceの | コンピューターに接続されているポータブル デバイスを列挙します。 |
IWMDMEnumStorageの | デバイス上のストレージを列挙します。 |
IWMDMMetaDataの | ストレージのメタデータ プロパティ (アーティスト、アルバム、ジャンルなど) を設定および取得します。 |
IWMDMObjectInfo | IWMDMDeviceControl インターフェイスによってデバイス上のプレイ可能なファイルがどのように処理されるかを制御する情報を取得および設定します。 |
IWMDMRevokedの | 転送が失効エラーで失敗した場合に、更新されたコンポーネントをダウンロードできる URL を取得します。 |
IWMDMStorageの | デバイス上のストレージ (ファイル、フォルダー、プレイリスト) を調べて探索するメソッドを提供します。 |
IWMDMStorage2 | IWMDMStorage 拡張します。これにより、子ストレージを名前で取得したり、拡張属性を取得および設定したりできるようになります。 |
IWMDMStorage3 | メタデータ 公開することによって IWMDMStorage2 を拡張します。 |
IWMDMStorage4の | ストレージ 使用可能なメタデータのサブセットを取得し、他のストレージへの参照の一覧を設定および取得するためのメソッドを提供することで、IWMDMStorage3 を拡張します。 |
IWMDMStorageControlの | デバイス内、またはデバイスとコンピューターの間でファイルを挿入、削除、または移動するために使用されます。 |
IWMDMStorageControl2の | IWMDMStorageControl 拡張します。これにより、ストレージにコンテンツを挿入するときに、宛先ファイルの名前を設定できるようになります。 |
IWMDMStorageControl3の | IWMDMMetaData インターフェイス ポインターを渡すことにより、IWMDMStorageControl2 拡張します。 |
IWMDMStorageGlobals | デバイス上の記憶域メディア (フラッシュ ROM カードなど) に関するグローバル情報を取得するためのメソッドを提供します。 |
IWMDRMDeviceAppの | アプリケーションがデバイスの DRM コンポーネントの使用状況測定、ライセンス同期、および更新を実行できるようにします。 |
IWMDRMDeviceApp2の | QueryDeviceStatus メソッドの新しいバージョンを提供することで、IWMDRMDeviceApp 拡張します。 |
コールバック インターフェイス
次の省略可能なインターフェイスは、読み取り要求や書き込み要求などの非同期要求の進行状況を追跡するために、アプリケーションによって実装されます。
インターフェイス | 形容 |
---|---|
IWMDMNotificationの | デバイスまたはメモリ ストレージ (RAM カードなど) がコンピューターに接続または切断されたときに、アプリケーションとサービス プロバイダーが通知を受信できるようにします。 |
IWMDMOperation2 | 拡張属性 取得および設定するメソッドを提供することで、IWMDMOperation を拡張します。 |
IWMDMOperation3 | IWMDMOperation 拡張するために、暗号化されていないデータを転送する新しい方法を提供して効率を高める。 |
IWMDMOperationの | アプリケーションで、ファイル転送中のコンピューターからのデータの読み取りまたは書き込み方法を制御できます。 |
IWMDMProgress2の | 状態インジケーターを指定して、IWMDMProgress::End メソッドを拡張します。 |
IWMDMProgress3の | イベント ID とコンテキスト固有の情報を指定する追加の入力パラメーターを指定することで、IWMDMProgress2 を拡張します。 |
IWMDMProgressの | メディアやファイル転送の書式設定などの操作の進行状況をアプリケーションが追跡できるようにします。 |
次の図は、重要なアプリケーション インターフェイスの大部分がルート IWMDeviceManager インターフェイスから取得される方法を示しています。 アプリケーションは、MediaDevMgr オブジェクトを作成し、IComponentAuthenticate インターフェイスを要求し、コンポーネントを認証してから、IWMDeviceManager を要求することで、このルート インターフェイスを取得します (これらの手順については、「アプリケーション の認証で説明します)。 このルート インターフェイスが取得されると、IWMDeviceManager::EnumDevices が呼び出され、IWMDMEnumDevice実装するオブジェクトが作成されます。 他のインターフェイスは、示されている順序でインターフェイスのメソッドを呼び出すことによって取得されます。 IWMDMDevice2 などの派生インターフェイスは、基本インターフェイス QueryInterface を呼び出すことによって取得されます。
次の図では、派生インターフェイスはスラッシュでラベル付けされているため、"IWMDMStorage/2/3" は IWMDMStorage 、IWMDMStorage2、および IWMDMStorage3 示します。
関連トピック