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 및 DxgkDdiStartDevice호출 사이에 언제든지 PASSIVE 수준에서 호출되며 동기화 0 수준지원해야 합니다. 수집된 데이터에는 개인 사용자 정보가 포함되어서는 안 됩니다.
WDDM 2.7 이상 드라이버는 블랙 스크린 블랙 박스 데이터 수집에 대한 DXGK_DI_BLACKSCREENDXGK_DIAGNOSTICINFO_TYPE 열거형 유형을 지원해야 합니다.
검은색 화면 시나리오의 경우 OS는 먼저
pCollectDiagnosticInfo->BucketingString 사용하여 가능한 경우 블랙박스 데이터를 버킷팅하는 것이 좋습니다. BufferSizeIn 입력 버퍼의 크기가 모든 블랙 박스 데이터에 충분하지 않은 경우 드라이버는 대부분의 검은색 화면 근본 원인 분석에서 가장 중요하지 않은 데이터를 제외하는 데 있어 자체적인 절충을 수행해야 합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 버전 1903 |
헤더 | dispmprt.h |
IRQL |
PASSIVE_LEVEL |