DXGKDDI_COLLECTDIAGNOSTICINFO コールバック関数 (dispmprt.h)
DxgkDdiCollectDiagnosticInfo コールバック ルーチンは、DXGK_DIAGNOSTICINFO_TYPEで指定された理由でプライベート ドライバー情報を収集します。
Windows 10 バージョン 1903 では、
構文
DXGKDDI_COLLECTDIAGNOSTICINFO DxgkddiCollectdiagnosticinfo;
NTSTATUS DxgkddiCollectdiagnosticinfo(
[in] IN_CONST_PDEVICE_OBJECT PhysicalDeviceObject,
[in, out] INOUT_PDXGKARG_COLLECTDIAGNOSTICINFO pCollectDiagnosticInfo
)
{...}
パラメーター
[in] PhysicalDeviceObject
ディスプレイ アダプターを識別する物理デバイス オブジェクト (PDO) へのポインター。
[in, out] pCollectDiagnosticInfo
ドライバーによって収集された情報を記述する DXGKARG_COLLECTDIAGNOSTICINFO 構造体へのポインター。
戻り値
プライベート データ情報が正常に収集された場合にSTATUS_SUCCESSを返します。 それ以外の場合は、次のいずれかのエラー コードが返されます。
エラー コード | 意味 |
---|---|
STATUS_DRIVER_INTERNAL_ERROR | ドライバー内で一般的な SW エラーが発生しました。 |
STATUS_ACCESS_DENIED | ハードウェアは現在、他のスレッドによって使用されており、この DDI にアクセスできません。 |
STATUS_DEVICE_HARDWARE_ERROR | 一般的な HW エラーが発生しました。 |
STATUS_DEVICE_POWERED_OFF | デバイスの電源がオフになっています。 |
備考
この関数は、dxgkDdiAddDevice
WDDM 2.7 以降のドライバーは、ブラック スクリーン ブラック ボックス データ収集の DXGK_DI_BLACKSCREENDXGK_DIAGNOSTICINFO_TYPE 列挙型をサポートするために必要です。
黒い画面のシナリオでは、OS はまず、DxgkDdiGetDisplayStateNonIntrusive
pCollectDiagnosticInfo->BucketingString を使用して、ブラック ボックス データを可能な限りバケット化することをお勧めします。 BufferSizeIn 入力バッファーのサイズがすべてのブラック ボックス データに対して十分でない場合、ドライバーは、ほとんどの黒い画面の根本原因分析で最も重要ではないデータを除外する際に独自のトレードオフを行う必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1903 |
ヘッダー | dispmprt.h |
IRQL | PASSIVE_LEVEL |
関連項目
DxgkDdiAddDevice の
DxgkDdiStartDevice の