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:

Der Treiber sollte die dem Kontext zugeordneten Microsoft DirectDraw-Oberflächen nicht freigeben, da diese von DirectDraw als Reaktion auf eine Anwendung oder Direct3D-Laufzeitanforderung freigegeben werden.

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)

Weitere Informationen

D3DHAL_CONTEXTCREATEDATA

D3DHAL_CONTEXTDESTROYDATA

D3dContextErstellen

D3dDestroyDLocal

DD_DIRECTDRAW_LOCAL