PFNKSSTREAMPOINTER-Rückruffunktion (ks.h)

AVStream ruft die AVStrMiniCancelCallback-Routine eines Minitreibers auf, wenn die IRP, die einem geklonten Streamzeiger zugeordnet ist, abgebrochen wird. Diese Routine ist optional.

Syntax

PFNKSSTREAMPOINTER Pfnksstreampointer;

void Pfnksstreampointer(
  [in] PKSSTREAM_POINTER StreamPointer
)
{...}

Parameter

[in] StreamPointer

Ein Zeiger auf den Klon KSSTREAM_POINTER , der dem abgebrochenen IRP zugeordnet ist. StreamPointer wurde durch einen Aufruf von KsStreamPointerClone erstellt.

Rückgabewert

Keine

Bemerkungen

Der Minidriver gibt die Adresse dieser Routine im CancelCallback-Parameter von KsStreamPointerClone an.

In AVStrMiniCancelCallback sollte der Minidriver alle Verweise auf den Klonzeiger auf NULL festlegen.

Darüber hinaus sollte der Minidriver alle Kontextinformationen entfernen, die sich auf den Klonzeiger beziehen, und die Hardware über den Abbruch benachrichtigen.

Schließlich muss der Minidriver KsStreamPointerDelete aufrufen, um den Klon und den damit verbundenen Kontext zu löschen. Wenn der Minidriver den Klon nicht löscht, behält der IRP eine Verweisanzahl bei und ist nicht abgeschlossen, was möglicherweise dazu führt, dass verwandte Anwendungen abstürzen.

AVStrMiniCancelCallback wird aufgerufen, wobei die Spin-Sperre der Warteschlange gehalten wird, also bei DISPATCH_LEVEL. Dementsprechend kann die Rückrufroutine keine Warteschlangenbearbeitung durchführen oder Funktionen aufrufen, die einen Mutex abrufen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows XP und höheren Betriebssystemen sowie DirectX 8.0 und höher DirectX-Versionen.
Zielplattform Desktop
Kopfzeile ks.h (ks.h einschließen)

Weitere Informationen

KSSTREAM_POINTER

KsStreamPointerClone

KsStreamPointerDelete