DXGKDDI_MIRACAST_DESTROY_CONTEXT Rückruffunktion (dispmprt.h)

Zerstört eine instance eines Miracast-Geräts.

Syntax

DXGKDDI_MIRACAST_DESTROY_CONTEXT DxgkddiMiracastDestroyContext;

void DxgkddiMiracastDestroyContext(
  [in] PVOID DriverContext,
  [in] PVOID MiracastContext
)
{...}

Parameter

[in] DriverContext

Ein Handle für einen Kontextblock, der einer Grafikkarte zugeordnet ist. Die DxgkDdiAddDevice-Funktion des Display-Miniporttreibers hat dieses Handle zuvor für das DirectX-Grafikkernsubsystem bereitgestellt.

[in] MiracastContext

Der Miracast-Gerätekontext, der vom Betriebssystem bereitgestellt wird. Dieser Kontext wurde zuvor vom Treiber in einem Aufruf der DxgkDdiMiracastCreateContext-Funktion bereitgestellt.

Rückgabewert

Keine

Bemerkungen

Wenn diese Funktion aufgerufen wird, sollte der Anzeige-Miniporttreiber alle Kernelmodusressourcen freigeben, die er bei der Verarbeitung der DxgkDdiMiracastCreateContext-Funktion zugewiesen hat, und er sollte sofort einen HpD-Erkennungswert (Monitor Departure Hot-Plug Detection) an das Betriebssystem senden.

Das Betriebssystem garantiert, dass die DxgkDdiMiracastIoControl-Funktion nach dem Aufruf dieser Funktion nicht mehr aufgerufen wird.

Wenn ein Miracast-Gerät getrennt wird, bevor die DxgkDdiCommitVidPn-Funktion abgeschlossen ist, während auf diesem Miracast-Ziel noch ein vorgang ausgeführt wird, sollte der Display-Miniporttreiber keine Daten an den Miracast-Treiber im Benutzermodus senden.

Wenn die StopMiracastSession-Funktion im Benutzermodus zu lange dauert, ruft das Betriebssystem DxgkDdiMiracastDestroyContext auf, während der Miracast-Treiber im Benutzermodus noch ausgeführt wird. In diesem Fall blockiert das Betriebssystem alle weiteren Aufrufe der MiracastIoControl-Funktion im Benutzermodus.

Synchronisierung

Das Betriebssystem gruppiert die Funktionen DxgkDdiMiracastCreateContext, DxgkDdiMiracastDestroyContext und DxgkDdiMiracastIoControl als Miracast-Klasse . Das Betriebssystem garantiert, dass diese Funktionen dem Synchronisierungsmodus der zweiten Ebene folgen, wie unter Threading und Synchronisierung zweite Ebene definiert. Diese Funktionen können aufgerufen werden, wenn andere Klassen von Funktionen der Ebene 0, 1 oder andere Klassen von Funktionen der Ebene 2 in einem anderen Threadkontext aufgerufen werden. Allerdings kann jeweils nur eine dieser Miracast-Klassenfunktionen der Ebene 2 aufgerufen werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8.1
Unterstützte Mindestversion (Server) Windows Server 2012 R2
Zielplattform Desktop
Kopfzeile dispmprt.h (include Dispmprt.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

DxgkDdiAddDevice

DxgkDdiCommitVidPn

DxgkDdiMiracastCreateContext

DxgkDdiMiracastIoControl

MiracastIoControl

StopMiracastSession