次の方法で共有


ISCPSecureQuery::ExamineData メソッド (mswmdm.h)

ExamineData メソッドは、Windows Media デバイス マネージャーがこのメソッドに渡すデータを調べることで、コンテンツの権限と責任を判断します。

構文

HRESULT ExamineData(
  [in]      UINT     fuFlags,
  [in]      LPWSTR   pwszExtension,
  [in]      BYTE     *pData,
  [in]      DWORD    dwSize,
  [in, out] BYTE [8] abMac
);

パラメーター

[in] fuFlags

意思決定を行うためにセキュリティで保護されたコンテンツ プロバイダーに提供されるデータを記述するフラグ。 次のフラグを指定できます。

フラグ 説明
WMDM_SCP_EXAMINE_DATA pData パラメーターは、検査対象のデータを指します。

[in] pwszExtension

セキュリティで保護されたコンテンツ プロバイダーが GetDataDemands 呼び出しで拡張機能を要求した場合に調べるファイル名拡張子へのポインター。

[in] pData

調べるファイルの先頭にあるデータへのポインター。 このパラメーターは、入力メッセージ認証コードに含まれている必要があり、暗号化する必要があります。

[in] dwSize

調べるデータの長さ (バイト単位) を含む DWORD。 このパラメーターは、入力メッセージ認証コードに含まれている必要があります。

[in, out] abMac

このメソッドのパラメーター データのメッセージ認証コードを含む 8 バイトの配列。 (WMDM_MAC_LENGTHは 8 と定義されています。

戻り値

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

リターン コード 説明
S_OK
メソッドが成功しました。 セキュリティで保護されたコンテンツ プロバイダーは、このコンテンツを担当します。
WMDM_E_CALL_OUT_OF_SEQUENCE
このメソッドは順番に呼び出されました。 GetDataDemands を 最初に呼び出す必要があります。
WMDM_E_MAC_CHECK_FAILED
メッセージ認証コードが無効です。
WMDM_E_MOREDATA
Windows Media デバイス マネージャーは、別のデータ パケットを使用してこのメソッドを再度呼び出す必要があります。 パケットのサイズは、GetDataDemands メソッドの pdwMinExamineData パラメーターによって決まります。
S_FALSE
セキュリティで保護されたコンテンツ プロバイダーは、このコンテンツに対して責任を負いません。 セキュリティで保護されたコンテンツ プロバイダーとの対話を終了します。
E_INVALIDARG
パラメーターが無効であるか、 NULL ポインターです。
E_FAIL
未指定のエラーが発生しました。

解説

このメソッドは、 GetDataDemands メソッドの後に呼び出されます。 セキュリティで保護されたコンテンツ プロバイダーは、このメソッドで渡された情報を使用して、コンテンツに責任があるかどうかを判断します。 fuFlags パラメーターを調べて、検査のために提示されたデータを決定します。 pData パラメーターは、権限と責任のデータの先頭を指します。 dwSize パラメーターには、権限データと責任データの長さ (バイト単位) が含まれます。

WMDM_SCP_EXAMINE_DATA フラグが設定されている場合、 pDataBuffer パラメーターには、セキュリティで保護されたコンテンツ プロバイダーが調べるための dwDataLength バイトが 含まれます。

このメソッドがS_OKまたはWMDM_E_MOREDATAを返さない場合、Windows Media デバイス マネージャーはこのセキュリティで保護されたコンテンツ プロバイダーをそれ以上呼び出しません。

要件

要件
対象プラットフォーム Windows
ヘッダー mswmdm.h
Library Mssachlp.lib

こちらもご覧ください

ISCPSecureQuery インターフェイス