DXGKARG_COLLECTDIAGNOSTICINFO estructura (dispmprt.h)

Usado por la función de devolución de llamada DXGKDDI_COLLECTDIAGNOSTICINFO para recopilar información del controlador privado por diversos motivos.

Por ejemplo, el sistema operativo llamará a la función de devolución de llamada DXGKDDI_COLLECTDIAGNOSTICINFO cuando se necesite información de diagnóstico, al tiempo que proporcionará el tipo de información que se solicita (DXGK_DIAGNOSTICINFO_TYPE). El controlador debe recopilar toda la información privada para investigar el problema y enviarlo al sistema operativo.

Sintaxis

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;

Miembros

[in, hAdapter

Identificador de un bloque de contexto asociado a un adaptador de pantalla.

Antes de WDDM 2.6, la función DxgkDdiAddDevice del controlador de minipuerto de pantalla proporcionó este identificador al subsistema del kernel de gráficos de DirectX. Este parámetro es opcional y puede ser NULL si el controlador no pudo proporcionar el identificador al sistema operativo.

[in] Type

Valor de enumeración DXGK_DIAGNOSTICINFO_TYPE que indica el tipo de información que el controlador necesita recopilar.

[out] BucketingString[DXGK_DUMP_BUCKETING_BUFFER_SIZE]

Búfer de tamaño fijo proporcionado para una cadena que el controlador debe usar para identificar el problema con fines de creación de cubos. Esta cadena debe ser coherente entre las versiones del controlador para el mismo problema, por lo que no debe contener elementos como referencias de origen, versiones de controladores o detalles específicos de la instancia, como números de barrera o identificadores de destino. Puede contener información como un identificador del subcomponente interno que produjo un error o el nombre de un módulo, por ejemplo mismatched_driver_ihvxseries.sys. Los códigos válidos son 0x21-0x7E y el carácter de subrayado (0x5f) se debe usar en lugar del espacio (0x20).

[out, DescriptionString[DXGK_DUMP_DESCRIPTION_BUFFER_SIZE]

Un búfer de tamaño fijo proporcionado para una cadena que el controlador debe usar para describir los detalles específicos de la instancia que no se usan para la creación de cubos, pero se puede usar para proporcionar más detalles sobre un problema específico, por ejemplo mismatched_driver_versions_kmd_10.22.1111.1121,_ihvxseries:10.22.1111.1122. Los códigos válidos son 0x21-0x7E y el carácter de subrayado (0x5f) se debe usar en lugar del espacio (0x20).

[out, pReserved

Puntero a VOID en una unión sin nombre que está reservada como marcador de posición para un puntero a un argumento específico del tipo que el sistema operativo podría proporcionar para algunos tipos. Este valor es NULL para tipos que no requieren ninguna información extendida.

[in] BufferSizeIn

Variable que proporciona el tamaño, en bytes, del búfer asignado del sistema operativo. En Type value of DXGK_DI_ADDDEVICE and DXGK_DI_STARTDEVICE the size will be around 0x80000.

[out] BufferSizeOut

Variable que el controlador debe actualizar con un tamaño real rellenado con sus datos privados. Si no se proporciona ningún dato privado, el controlador debe asignar 0 a la variable .

[out] pBuffer

Puntero a un búfer que recibe los datos del controlador privado.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 1903
Encabezado dispmprt.h

Consulte también

DXGK_DIAGNOSTICINFO_TYPE

DXGKDDI_COLLECTDIAGNOSTICINFO

DxgkDdiAddDevice

DxgkDdiGetDisplayStateIntrusive

DxgkDdiGetDisplayStateNonIntrusive