PFND3DDDI_DESTROYCONTEXTCB funzione di callback (d3dumddi.h)
Il runtime D3D pfnDestroyContextCb funzione elimina definitivamente un contesto creato tramite una chiamata al relativo funzione pfnCreateContextCb.
Sintassi
PFND3DDDI_DESTROYCONTEXTCB Pfnd3dddiDestroycontextcb;
HRESULT Pfnd3dddiDestroycontextcb(
HANDLE hDevice,
const D3DDDICB_DESTROYCONTEXT *unnamedParam2
)
{...}
Parametri
hDevice
[in] Handle in un dispositivo di visualizzazione( ovvero il contesto grafico).
unnamedParam2
[in] Puntatore a una struttura D3DDDICB_DESTROYCONTEXT che identifica il contesto da eliminare.
Valore restituito
pfnDestroyContextCb restituisce un valore HRESULT per indicare l'esito positivo o negativo della richiesta di eliminazione del contesto. I valori restituiti comuni includono:
Codice restituito | Descrizione |
---|---|
S_OK | Il contesto è stato eliminato correttamente. |
E_INVALIDARG | I parametri sono stati convalidati e sono stati determinati in modo che non siano corretti. |
Osservazioni
Se il contesto specificato non ha completato il lavoro attualmente in coda, la funzione pfnDestroyContextCb blocca fino al completamento del lavoro del contesto e quindi restituisce.
pfnDestroyContextCb restituisce un errore se il contesto da eliminare è attualmente proprietario di un oggetto di sincronizzazione.
Per informazioni su come il driver chiama pfnDestroyContextCb a partire da Direct3D versione 11, vedere Modifiche da Direct3D 10.
L'esempio di codice seguente mostra come eliminare definitivamente il contesto predefinito per un dispositivo di visualizzazione.
if (m_d3dCallbacks.pfnDestroyContextCb) {
D3DDDICB_DESTROYCONTEXT DestroyContext;
DestroyContext.hContext = m_sContexts[MULTI_ENGINE_NODE_3D].hContext;
m_d3dCallbacks.pfnDestroyContextCb(m_hD3D, &DestroyContext);
m_sContexts[MULTI_ENGINE_NODE_3D].hContext = NULL;
}
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows Vista (WDDM 1.0) |
piattaforma di destinazione | Desktop |
intestazione |
d3dumddi.h (include D3dumddi.h) |