структура DXGKARG_COLLECTDIAGNOSTICINFO (dispmprt.h)
Используется функцией обратного вызова DXGKDDI_COLLECTDIAGNOSTICINFO для сбора сведений о частном драйвере по различным причинам.
Например, операционная система вызовет функцию обратного вызова DXGKDDI_COLLECTDIAGNOSTICINFO, когда требуются диагностические сведения, предоставляя тип запрашиваемой информации (DXGK_DIAGNOSTICINFO_TYPE). Драйвер должен собрать все личные сведения, чтобы изучить проблему и отправить ее в ОС.
Синтаксис
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. Этот параметр является необязательным и может иметь значение NULL, если драйверу не удалось предоставить дескриптор операционной системе.
[in] Type
Значение перечисления DXGK_DIAGNOSTICINFO_TYPE , указывающее тип сведений, которые необходимо собрать драйверу.
[out] BucketingString[DXGK_DUMP_BUCKETING_BUFFER_SIZE]
Буфер фиксированного размера, предоставленный для строки, которую драйвер должен использовать для определения проблемы в целях сегментирования. Эта строка должна быть согласованной между версиями драйверов для одной и той же проблемы, поэтому она не должна содержать такие элементы, как ссылки на источники, версии драйверов или конкретные сведения экземпляра, такие как номера ограждения или целевые идентификаторы. Он может содержать такие сведения, как идентификатор внутреннего подкомпонента, который завершился сбоем, или имя модуля, например mismatched_driver_ihvxseries.sys
. Допустимые коды: 0x21-0x7E
и вместо пробела () следует использовать символ подчеркивания (0x5f
0x20
).
[out, DescriptionString[DXGK_DUMP_DESCRIPTION_BUFFER_SIZE]
Буфер фиксированного размера, предоставленный для строки, которую драйвер должен использовать для описания конкретных сведений экземпляра, которые не используются для сегментирования, но могут использоваться для предоставления дополнительных сведений о конкретной проблеме, например mismatched_driver_versions_kmd_10.22.1111.1121,_ihvxseries:10.22.1111.1122
. Допустимые коды: 0x21-0x7E
и вместо пробела () следует использовать символ подчеркивания (0x5f
0x20
).
[out, pReserved
Указатель на VOID в неименованном союзе, зарезервированный в качестве заполнителя для указателя на аргумент типа, который ОС может предоставить для некоторых типов. Это значение равно NULL для типов , которые не требуют дополнительных сведений.
[in] BufferSizeIn
Переменная, которая предоставляет размер буфера, выделенного ОС ( в байтах). Для параметра Type значение DXGK_DI_ADDDEVICE и DXGK_DI_STARTDEVICE размер будет около 0x80000.
[out] BufferSizeOut
Переменная, которую драйвер должен обновить, указав фактический размер, заполненный личными данными. Если частные данные не предоставлены, драйвер должен присвоить переменной значение 0.
[out] pBuffer
Указатель на буфер, получающий данные частного драйвера.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 версии 1903 |
Верхняя часть | dispmprt.h |