Condividi tramite


LPD3DHAL_CONTEXTDESTROYCB funzione di callback (d3dhal.h)

La funzione D3dContextDestroy elimina il contesto specificato.

Sintassi

LPD3DHAL_CONTEXTDESTROYCB Lpd3dhalContextdestroycb;

DWORD Lpd3dhalContextdestroycb(
  LPD3DHAL_CONTEXTDESTROYDATA unnamedParam1
)
{...}

Parametri

unnamedParam1

pcdd [in]

Punta a una struttura D3DHAL_CONTEXTDESTROYDATA che contiene le informazioni necessarie per il driver per eliminare il contesto.

Valore restituito

D3dContextDestroy restituisce uno dei codici di callback seguenti:

Commenti

Tutti i driver Microsoft Direct3D devono supportare D3dContextDestroy.

Il driver deve liberare tutte le risorse allocate al contesto eliminato. Ad esempio, il driver deve liberare le risorse seguenti associate al contesto:

Il driver non deve liberare le superfici di Microsoft DirectDraw associate al contesto perché queste verranno liberate da DirectDraw in risposta a una richiesta di runtime di applicazione o Direct3D.

Se il driver memorizza nella cache il puntatore alla struttura DD_DIRECTDRAW_LOCAL passata come membro lpDDLcl della struttura di D3DHAL_CONTEXTCREATEDATA quando è stato chiamato D3dContextCreate, il puntatore potrebbe diventare non valido prima che venga chiamato D3dContextDestroy. Pertanto, D3dContextDestroy non deve dereferenziare questo puntatore DD_DIRECTDRAW_LOCAL perché potrebbe essere restituita una violazione di accesso o dati casuali. Ad esempio, se la funzione D3dDestroyDestroyDLocal del driver viene chiamata prima di D3dContextDestroy, il sistema operativo rilascia questo puntatore DD_DIRECTDRAW_LOCAL prima della chiamata D3dContextDestroy.

D3dContextDestroy può essere chiamato con un PDEV disabilitato. Un PDEV è disabilitato o abilitato chiamando la funzione DrvAssertMode del driver visualizzato. Per altre informazioni, vedere Gestione di PDEV .

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione d3dhal.h (include D3dhal.h)

Vedi anche

D3DHAL_CONTEXTCREATEDATA

D3DHAL_CONTEXTDESTROYDATA

D3dContextCreate

D3dDestroyDDLocal

DD_DIRECTDRAW_LOCAL