Condividi tramite


struttura DXGKARG_COLLECTDIAGNOSTICINFO (dispmprt.h)

Usato dalla funzione di callback DXGKDDI_COLLECTDIAGNOSTICINFO per raccogliere informazioni sul driver privato per diversi motivi.

Ad esempio, il sistema operativo chiamerà la funzione di callback DXGKDDI_COLLECTDIAGNOSTICINFO quando sono necessarie informazioni di diagnostica, fornendo al tempo stesso il tipo di informazioni richieste (DXGK_DIAGNOSTICINFO_TYPE). Il driver deve raccogliere tutte le informazioni private per analizzare il problema e inviarle al sistema operativo.

Sintassi

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;

Members

[in, hAdapter

Handle di un blocco di contesto associato a una scheda di visualizzazione.

Prima di WDDM 2.6, la funzione DxgkDdiAddDevice del driver miniport di visualizzazione forniva questo handle al sottosistema del kernel grafico DirectX. Questo parametro è facoltativo e può essere NULL se il driver non è riuscito a fornire l'handle al sistema operativo.

[in] Type

Valore di enumerazione DXGK_DIAGNOSTICINFO_TYPE che indica il tipo di informazioni che il driver deve raccogliere.

[out] BucketingString[DXGK_DUMP_BUCKETING_BUFFER_SIZE]

Buffer a dimensione fissa fornito per una stringa che il driver deve usare per identificare il problema a scopo di bucket. Questa stringa deve essere coerente tra le versioni del driver per lo stesso problema, pertanto non deve contenere elementi come riferimenti di origine, versioni del driver o dettagli specifici dell'istanza, ad esempio numeri di isolamento o ID di destinazione. Può contenere informazioni quali un identificatore del componente secondario interno che ha avuto esito negativo o il nome di un modulo, ad esempio mismatched_driver_ihvxseries.sys. I codici validi sono 0x21-0x7E e il carattere di sottolineatura (0x5f) deve essere usato anziché lo spazio (0x20).

[out, DescriptionString[DXGK_DUMP_DESCRIPTION_BUFFER_SIZE]

Buffer a dimensione fissa fornito per una stringa che il driver deve usare per descrivere i dettagli specifici dell'istanza che non vengono usati per il bucket, ma possono essere usati per fornire altri dettagli su un problema specifico, ad esempio mismatched_driver_versions_kmd_10.22.1111.1121,_ihvxseries:10.22.1111.1122. I codici validi sono 0x21-0x7E e il carattere di sottolineatura (0x5f) deve essere usato anziché lo spazio (0x20).

[out, pReserved

Puntatore a VOID in un'unione senza nome riservata come segnaposto per un puntatore a un argomento specifico del tipo che il sistema operativo potrebbe fornire per alcuni tipi. Questo valore è NULL per i tipi che non richiedono informazioni estese.

[in] BufferSizeIn

Variabile che fornisce le dimensioni, in byte, del buffer allocato dal sistema operativo. Per Valore type di DXGK_DI_ADDDEVICE e DXGK_DI_STARTDEVICE la dimensione sarà intorno 0x80000.

[out] BufferSizeOut

Variabile che il driver deve aggiornare con una dimensione effettiva riempita con i dati privati. Se non vengono forniti dati privati, il driver deve assegnare 0 alla variabile .

[out] pBuffer

Puntatore a un buffer che riceve i dati del driver privato.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1903
Intestazione dispmprt.h

Vedi anche

DXGK_DIAGNOSTICINFO_TYPE

DXGKDDI_COLLECTDIAGNOSTICINFO

DxgkDdiAddDevice

DxgkDdiGetDisplayStateIntrusive

DxgkDdiGetDisplayStateNonIntrusive