DXGKDDI_MIRACAST_DESTROY_CONTEXT コールバック関数 (dispmprt.h)

Miracast デバイスのインスタンスを破棄します。

構文

DXGKDDI_MIRACAST_DESTROY_CONTEXT DxgkddiMiracastDestroyContext;

void DxgkddiMiracastDestroyContext(
  [in] PVOID DriverContext,
  [in] PVOID MiracastContext
)
{...}

パラメーター

[in] DriverContext

ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーの DxgkDdiAddDevice 関数は、以前は DirectX グラフィックス カーネル サブシステムにこのハンドルを提供しました。

[in] MiracastContext

オペレーティング システムによって提供される Miracast デバイス コンテキスト。 このコンテキストは、 DxgkDdiMiracastCreateContext 関数の呼び出しでドライバーによって以前に提供されていました。

戻り値

なし

解説

この関数が呼び出されると、ディスプレイ ミニポート ドライバーは 、DxgkDdiMiracastCreateContext 関数を処理したときに割り当てられたすべてのカーネル モード リソースを解放する必要があり、すぐにモニターの出発ホット プラグ検出 (HPD) 認識値をオペレーティング システムに送信する必要があります。

オペレーティング システムは、この関数を呼び出した後、 DxgkDdiMiracastIoControl 関数をこれ以上呼び出さないことを保証します。

DxgkDdiCommitVidPn 関数が完了する前に Miracast デバイスが切断されている場合、現在の操作がこの Miracast ターゲットで実行されている間、ディスプレイ ミニポート ドライバーはユーザー モードの Miracast ドライバーにデータを送信しないでください。

ユーザー モードの StopMiracastSession 関数の完了に時間がかかりすぎる場合、オペレーティング システムは、ユーザー モード Miracast ドライバーの実行中に DxgkDdiMiracastDestroyContext を呼び出します。 この場合、オペレーティング システムは、ユーザー モード の MiracastIoControl 関数へのそれ以上の呼び出しをブロックします。

同期

オペレーティング システムは、 DxgkDdiMiracastCreateContextDxgkDdiMiracastDestroyContextDxgkDdiMiracastIoControl 関数を Miracast クラスとしてグループ化します。 オペレーティング システムでは、これらの関数がスレッド処理と同期の第 2 レベルで定義されている第 2 レベルの同期モードに従っていることを保証します。 これらの関数は、他のレベル 0、1、またはレベル 2 関数の他のクラスが別のスレッド コンテキストで呼び出されている場合に呼び出すことができます。 ただし、一度に呼び出すことができるのは、これらのレベル 2 の Miracast クラス関数のいずれか 1 つだけです。

要件

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

こちらもご覧ください

DxgkDdiAddDevice

DxgkDdiCommitVidPn

DxgkDdiMiracastCreateContext

DxgkDdiMiracastIoControl

MiracastIoControl

StopMiracastSession