LPD3DHAL_CONTEXTDESTROYCB Rückruffunktion (d3dhal.h)
Die D3dContextDestroy-Funktion löscht den angegebenen Kontext.
Syntax
LPD3DHAL_CONTEXTDESTROYCB Lpd3dhalContextdestroycb;
DWORD Lpd3dhalContextdestroycb(
LPD3DHAL_CONTEXTDESTROYDATA unnamedParam1
)
{...}
Parameter
unnamedParam1
pcdd [in]
Verweist auf eine D3DHAL_CONTEXTDESTROYDATA-Struktur , die die Informationen enthält, die der Treiber zum Zerstören des Kontexts benötigt.
Rückgabewert
D3dContextDestroy gibt einen der folgenden Rückrufcodes zurück:
Hinweise
Alle Microsoft Direct3D-Treiber müssen D3dContextDestroy unterstützen.
Der Treiber sollte alle Ressourcen freigeben, die er dem Kontext zugeordnet hat, der gelöscht wird. Der Treiber sollte beispielsweise die folgenden Ressourcen freigeben, die dem Kontext zugeordnet sind:
- Texturressourcen
- Vertex- und Pixelshader
- Ressourcen für asynchrone Abfragen
Wenn der Treiber den Zeiger auf die DD_DIRECTDRAW_LOCAL Struktur zwischengespeichert hat, die beim Aufruf von D3dContextCreate als lpDDLcl-Member der D3DHAL_CONTEXTCREATEDATA-Struktur übergeben wurde, wird der Zeiger möglicherweise ungültig, bevor D3dContextDestroy aufgerufen wird. Daher darf D3dContextDestroy diesen DD_DIRECTDRAW_LOCAL Zeiger nicht dereferenzieren, da möglicherweise eine Zugriffsverletzung oder zufällige Daten zurückgegeben werden. Wenn beispielsweise die D3dDestroyDLocal-Funktion des Treibers vor D3dContextDestroy aufgerufen wird, gibt das Betriebssystem diesen DD_DIRECTDRAW_LOCAL-Zeiger vor dem D3dContextDestroy-Aufruf frei.
D3dContextDestroy kann mit einem deaktivierten PDEV aufgerufen werden. Ein PDEV wird durch Aufrufen der DrvAssertMode-Funktion des Anzeigetreibers deaktiviert oder aktiviert. Weitere Informationen finden Sie unter Verwalten von PDEVs .
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | d3dhal.h (include D3dhal.h) |