DXGKARG_COLLECTDIAGNOSTICINFO 構造体 (dispmprt.h)

さまざまな理由でプライベート ドライバー情報を収集するために 、DXGKDDI_COLLECTDIAGNOSTICINFO コールバック関数によって使用されます。

たとえば、OS は、要求される情報の種類 (DXGK_DIAGNOSTICINFO_TYPE) を提供しながら、診断情報が必要な場合にDXGKDDI_COLLECTDIAGNOSTICINFOコールバック関数を呼び出します。 ドライバーは、すべての個人情報を収集して問題を調査し、OS に送信する必要があります。

構文

typedef struct _DXGKARG_COLLECTDIAGNOSTICINFO {
  [in, optional]  HANDLE                   hAdapter;
  [in]            DXGK_DIAGNOSTICINFO_TYPE Type;
                  CHAR                     BucketingString[DXGK_DUMP_BUCKETING_BUFFER_SIZE];
                  CHAR                     DescriptionString[DXGK_DUMP_DESCRIPTION_BUFFER_SIZE];
  union {
    [out, optional] PVOID pReserved;
  };
  [in]            UINT                     BufferSizeIn;
  [out]           UINT                     BufferSizeOut;
  [out]           PVOID                    pBuffer;
} DXGKARG_COLLECTDIAGNOSTICINFO;

メンバー

[in, hAdapter

ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。

WDDM 2.6 より前では、ディスプレイ ミニポート ドライバーの DxgkDdiAddDevice 関数は、DirectX グラフィックス カーネル サブシステムにこのハンドルを提供しました。 このパラメーターは省略可能であり、ドライバーが OS にハンドルを提供できなかった場合は NULL にすることができます。

[in] Type

ドライバー が収集する 必要がある情報の種類を示すDXGK_DIAGNOSTICINFO_TYPE列挙値。

[out] BucketingString[DXGK_DUMP_BUCKETING_BUFFER_SIZE]

バケット化の目的でドライバーが問題を特定するために使用する必要がある文字列に対して提供される固定サイズ バッファー。 この文字列は、同じ問題のドライバーのバージョン間で一貫している必要があるため、ソース参照、ドライバーのバージョン、フェンス番号やターゲット ID などのインスタンス固有の詳細などの要素を含めないようにする必要があります。 失敗した内部サブコンポーネントの識別子や、モジュール mismatched_driver_ihvxseries.sysの名前などの情報が含まれている場合があります。 有効なコードは であり0x21-0x7E、スペース () の代わりにアンダースコア (0x5f0x20) を使用する必要があります。

[out, DescriptionString[DXGK_DUMP_DESCRIPTION_BUFFER_SIZE]

バケット化に使用されないインスタンス固有の詳細を記述するためにドライバーが使用する必要がある文字列に対して提供される固定サイズ バッファー。たとえば、 など mismatched_driver_versions_kmd_10.22.1111.1121,_ihvxseries:10.22.1111.1122、特定の問題に関する詳細を提供するために使用できます。 有効なコードは であり0x21-0x7E、スペース () の代わりにアンダースコア (0x5f0x20) を使用する必要があります。

[out, pReserved

OS が一部の に対して提供する可能性がある型固有の引数へのポインターのプレースホルダーとして予約されている、名前のない共用体内の VOID へのポインター。 この値は、拡張情報を必要としない の場合は NULL です。

[in] BufferSizeIn

OS に割り当てられたバッファーのサイズをバイト単位で提供する変数。 [ type value of DXGK_DI_ADDDEVICE and DXGK_DI_STARTDEVICE size will be around 0x80000.

[out] BufferSizeOut

ドライバーが、そのプライベート データで満たされた実際のサイズで更新する必要がある変数。 プライベート データが指定されていない場合、ドライバーは変数に 0 を割り当てる必要があります。

[out] pBuffer

プライベート ドライバー データを受け取るバッファーへのポインター。

要件

要件
サポートされている最小のクライアント Windows 10 バージョン 1903
Header dispmprt.h

こちらもご覧ください

DXGK_DIAGNOSTICINFO_TYPE

DXGKDDI_COLLECTDIAGNOSTICINFO

DxgkDdiAddDevice

DxgkDdiGetDisplayStateIntrusive

DxgkDdiGetDisplayStateNonIntrusive