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 definitivamente il contesto.

Valore restituito

D3dContextDestroy restituisce uno dei codici di callback seguenti:

Osservazioni

Tutti i driver Microsoft Direct3D devono supportare D3dContextDestroy.

Il driver deve liberare tutte le risorse allocate al contesto che viene 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é verranno liberate da DirectDraw in risposta a un'applicazione o a una richiesta di runtime Direct3D.

Se il driver memorizza nella cache il puntatore alla struttura DD_DIRECTDRAW_LOCAL passata come membro lpDDLcl membro della struttura D3DHAL_CONTEXTCREATEDATA quando è stato chiamato D3dContextCreate, il puntatore potrebbe non essere valido prima di viene chiamato il D3dContextDestroy. Di conseguenza, D3dContextDestroy non deve dereferenziare questo puntatore DD_DIRECTDRAW_LOCAL perché potrebbe verificarsi una violazione di accesso o potrebbero essere restituiti dati casuali. Ad esempio, se la funzione D3dDestroyDDLocal 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 il driver di visualizzazione funzione DrvAssertMode. Per altre informazioni, vedere Gestione di PDEV.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione d3dhal.h (include D3dhal.h)

Vedere anche

D3DHAL_CONTEXTCREATEDATA

D3DHAL_CONTEXTDESTROYDATA

D3dContextCreare

D3dDestroyDDLocal

DD_DIRECTDRAW_LOCAL