DXGKCB_ENUMHANDLECHILDREN funzione di callback (d3dkmddi.h)

DXGKCB_ENUMHANDLECHILDREN enumera le allocazioni associate a una determinata risorsa, un'allocazione alla volta.

Sintassi

DXGKCB_ENUMHANDLECHILDREN DxgkcbEnumhandlechildren;

D3DKMT_HANDLE DxgkcbEnumhandlechildren(
  [in] IN_CONST_PDXGKARGCB_ENUMHANDLECHILDREN unnamedParam1
)
{...}

Parametri

[in] unnamedParam1

Puntatore a una struttura DXGKARGCB_ENUMHANDLECHILDREN che descrive la risorsa padre e l'indice dell'allocazione figlio da recuperare.

Valore restituito

DXGKCB_ENUMHANDLECHILDREN restituisce l'handle specifico di Dxgkrnl all'allocazione figlio descritta da pData . Per recuperare i dati specifici del dispositivo per l'handle, il driver miniport visualizzato deve chiamare la funzione DXGKCB_GETHANDLEDATA .

DXGKCB_ENUMHANDLECHILDREN restituisce un handle NULL se il valore dell'indice di allocazione figlio specificato nel membro Indice della struttura DXGKARGCB_ENUMHANDLECHILDREN supera il numero di allocazioni associate alla risorsa padre. Se DXGKCB_ENUMHANDLECHILDREN restituisce in modo imprevisto un handle NULL, il sottosistema kernel della grafica DirectX non è riuscito a risolvere l'handle nella risorsa padre, per un motivo come le possibilità seguenti:

  • Un handle non valido è stato ricevuto dal driver di visualizzazione in modalità utente a causa di un attacco dannoso o di un altro bug.
  • Le allocazioni hanno avuto problemi di durata.

Se un handle NULL viene restituito in modo imprevisto, il driver miniport visualizzato non dovrebbe eseguire la funzione DDI attualmente in esecuzione con STATUS_INVALID_HANDLE.

Commenti

Un driver miniport visualizzato può chiamare DXGKCB_ENUMHANDLECHILDREN in un ciclo per enumerare tutte le allocazioni associate a una risorsa.

Gli indici di handle di allocazione sono basati su zero. Se il driver miniport visualizzato imposta pData-Index> su 0, DXGKCB_ENUMHANDLECHILDREN restituisce il primo handle di allocazione; se Index è impostato su 1, DXGKCB_ENUMHANDLECHILDREN restituisce il secondo handle di allocazione e così via. Se Index è maggiore del numero di allocazioni associate alla risorsa, DXGKCB_ENUMHANDLECHILDREN restituisce NULL.

DXGKCB_XXX funzioni vengono implementate da Dxgkrnl. Per usare questa funzione di callback, impostare i membri appropriati di DXGKARGCB_ENUMHANDLECHILDREN e quindi chiamare DxgkCbEnumHandleChildren tramite il DXGKRNL_INTERFACE.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista (WDDM 1.0)
Piattaforma di destinazione Desktop
Intestazione d3dkmddi.h (include D3dkmddi.h)
IRQL PASSIVE_LEVEL

Vedi anche

DXGKARGCB_ENUMHANDLECHILDREN

DXGKCB_GETHANDLEDATA

DXGKRNL_INTERFACE