次の方法で共有


PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL コールバック関数 (d3d10umddi.h)

認証されたチャネルに対して、機能と状態の情報を照会します。 Windows ディスプレイ ドライバー モデル (WDDM) 1.2 以降のユーザー モード ディスプレイ ドライバーによって実装されます。

構文

PFND3D11_1DDI_QUERYAUTHENTICATEDCHANNEL Pfnd3d111DdiQueryauthenticatedchannel;

HRESULT Pfnd3d111DdiQueryauthenticatedchannel(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
  UINT InputDataSize,
  const VOID *pInputData,
  UINT OutputDataSize,
  VOID *pOutputData
)
{...}

パラメーター

hDevice

ディスプレイ デバイス (グラフィックス コンテキスト) へのハンドル。

hCAuthChannel

CreateAuthenticatedChannel(D3D11_1) 関数の呼び出しによって作成された認証済みチャネル オブジェクトへのハンドル。

InputDataSize

pInputData 配列内のデータのサイズ (バイト単位)。

pInputData

クエリする情報を記述するバッファーへのポインター。 このバッファー内のデータは、 D3D11_1DDI_AUTHENTICATED_QUERY_INPUT 構造体として書式設定されます。

OutputDataSize

pOutputData 配列内のデータのサイズ (バイト単位)。

pOutputData

クエリされた情報を含むバッファーへのポインター。 詳細については、「解説」を参照してください。

戻り値

次の値のいずれか。

リターン コード 説明
S_OK 認証されたチャネルのクエリが正常に実行されました。
E_FAIL ディスプレイ ミニポート ドライバーは、指定されたコマンドをサポートしていません
E_INVALIDARG パラメーターが検証され、正しくないと判断されました。
E_OUTOFMEMORY 操作を完了するためにメモリを使用できませんでした。

注釈

pInputData パラメーターは、D3D11_1DDI_AUTHENTICATED_QUERY_INPUT構造体を含むバッファーを参照します。 この構造体には、認証されたチャネルに対するドライバーのハンドル、シーケンス番号、実行するクエリの種類を示す GUID が含まれます。 シーケンス番号が ConfigureAuthenticatedChannel(D3D11_1) 関数を使用して初期化されていない場合、ドライバーはE_INVALIDARGを返す必要があります。 また、シーケンス番号が前 クエリ呼び出しのシーケンス番号を超えない場合、ドライバーはE_INVALIDARGを返す必要があります。

pOutputData パラメーターによって参照されるバイト配列は、D3D11_1DDI_AUTHENTICATED_QUERY_INPUT構造体の QueryType メンバーによって指定された形式です。 次の一覧では、 QueryType メンバーに基づくこのデータの形式について説明します。

ドライバーは、次の手順に従って 、pOutputData パラメーターによって参照される出力バッファーを準備します。

  1. QueryType メンバーに基づいて返される各構造体は、D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT構造体で始まります。 ドライバーは、 D3D11_1DDI_AUTHENTICATED_QUERY_INPUT のメンバーを D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT 構造体にコピーする必要があります。
  2. ドライバーは、QueryAuthenticatedChannel(D3D11_1) 呼び出しで返されるのと同じリターン コードに ReturnCode メンバーを設定する必要があります。 これにより、リターン コードにアクセスするための安全なメカニズムがアプリケーションに提供されます。
  3. QueryType メンバーの値に基づいて、ドライバーは pOutputData バッファー内のD3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT構造体に従う対応する構造体を初期化する必要があります。
  4. ドライバーは、Output Protection Manager (OPM) クエリを処理する方法と同じ方法で pOutputData バッファーに署名する必要があります。

    D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT構造体には、データの AES ベースの 1 キー CBC メッセージ認証コード (OMAC) が含まれています。 ディスプレイ ミニポート ドライバーは、データを認証するために出力バッファー内のデータに対して OMAC を計算する必要があります。 ドライバーは、最初に omac メンバーを 0 に設定し、バッファー内のデータの OMAC を計算することによってこれを行います。 その後、ドライバーは omac メンバーを計算した OMAC に設定します。

ディスプレイ ミニポート ドライバーは、次の条件下で QueryAuthenticatedChannel(D3D11_1) 呼び出しのE_INVALIDARGを返す必要があります。
  • シーケンス番号は、前の構成呼び出しで指定されたシーケンス番号より大きくはありません。
  • シーケンス番号は、 ConfigureAuthenticatedChannel(D3D11_1) 関数の呼び出しによってまだ初期化されていません。
  • OutputDataSize パラメーターは、D3D11_1DDI_AUTHENTICATED_CONFIGURE_INPUTで指定された構造体のサイズ未満です。QueryType メンバー。

要件

要件
サポートされている最小のクライアント Windows 8
サポートされている最小のサーバー Windows Server 2012
対象プラットフォーム デスクトップ
Header d3d10umddi.h (D3d10umddi.h を含む)

こちらもご覧ください

ConfigureAuthenticatedChannel(D3D11_1)

CreateAuthenticatedChannel(D3D11_1)

D3D11_1DDI_AUTHENTICATED_QUERY_INPUT

D3D11_1DDI_AUTHENTICATED_QUERY_OUTPUT