次の方法で共有


IWMDRMDeviceApp2::QueryDeviceStatus2 メソッド

QueryDeviceStatus2 メソッドは、特定の DRM の状態または機能についてデバイスに対してクエリを実行します。

構文

HRESULT QueryDeviceStatus2(
  [in]  IWMDMDevice *pDevice,
  [in]  DWORD       dwFlags,
  [out] DWORD       *pdwStatus
);

パラメーター

pDevice [in]

IWMDMDevice オブジェクトへのポインター。

dwFlags [in]

ビットごとの OR と組み合わせて、要求する機能を指定する次の DWORD 値の 1 つ以上。

フラグ 説明
WMDRM_QUERY_CLIENT_INDIVSTATUS コンピューターの DRM コンポーネントを個別化する必要があるかどうかを照会します。
WMDRM_QUERY_DEVICE_CLOCKSTATUS デバイスのセキュリティで保護されたクロックを追加または更新する必要があるかどうかを照会します。
WMDRM_QUERY_DEVICE_ISREVOKED デバイスが取り消されたかどうかを照会します。
WMDRM_QUERY_DEVICE_ISWMDRM デバイスがポータブル デバイス用の Windows Media DRM 10 をサポートしているかどうかを照会します。

pdwStatus [out]

要求されたデバイスの状態を指定する次の DWORD 値のうち、ビットごとの OR と組み合わせた 0 個以上の DWORD 値。

Status 説明
WMDRM_DEVICE_ISWMDRM デバイスは Windows Media DRM をサポートしています。
WMDRM_DEVICE_NEEDCLOCK デバイスにセキュリティで保護されたクロックがありません。
WMDRM_DEVICE_REVOKED デバイスが取り消されました。
WMDRM_CLIENT_NEEDINDIV コンピューターの DRM コンポーネントを個別化する必要があります。
WMDRM_DEVICE_REFRESHCLOCK クロックを更新する必要があります。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。
DRM_E_INVALIDARG
1 つ以上の引数が無効です。
NS_E_DRM_INVALID_CERTIFICATE
デバイスから取得したデバイス証明書が無効です。
NS_E_DRM_UNABLE_TO_GET_DEVICE_CERT
デバイスからデバイス証明書を取得できませんでした。

注釈

DRM コンテンツに対して制限されたアクション (デバイスへの DRM コンテンツの転送、使用状況測定情報の取得など) を実行する前に、このメソッドを呼び出す必要があります。 pdwStatus によって取得された値が、何らかのアクション (デスクトップの個別化やデバイスのクロックの取得など) を実行する必要があることを示している場合、アプリケーションは IWMDRMDeviceApp::AcquireDeviceData を呼び出し、この関数から取得した pdwStatus 値を AcquireDeviceDatadwFlags パラメーターに渡す必要があります。 ゼロが返された場合、デバイスはポータブル デバイス用の Windows Media DRM 10 をサポートしていないため、アクションを実行する必要はありません。 詳細については、「 アプリケーションでの保護されたコンテンツの処理 」を参照してください。

要件

要件
ヘッダー
WMDRMDeviceApp.h (WMDRMDeviceApp.idl からビルドされたWmdrmdeviceapp_i.c も必要です)
ライブラリ
Mssachlp.lib

こちらもご覧ください

アプリケーションでの保護されたコンテンツの処理

IWMDRMDeviceApp::QueryDeviceStatus

IWMDRMDeviceApp2 インターフェイス