VideoPortRegisterBugcheckCallback-Funktion (video.h)

Die VideoPortRegisterBugcheckCallback-Funktion ermöglicht es einem Video-Miniporttreiber, sich für einen Rückruf zu registrieren oder zu hooken, der aufgerufen wird, wenn eine angegebene Fehlerprüfung erfolgt.

Syntax

VIDEOPORT_DEPRECATED VIDEOPORT_API VP_STATUS VideoPortRegisterBugcheckCallback(
  [in] IN PVOID                    HwDeviceExtension,
  [in] IN ULONG                    BugcheckCode,
  [in] IN PVIDEO_BUGCHECK_CALLBACK Callback,
  [in] IN ULONG                    BugcheckDataSize
);

Parameter

[in] HwDeviceExtension

Zeiger auf die Geräteerweiterung des Miniporttreibers.

[in] BugcheckCode

Gibt den Fehlerprüfungscode an, für den zurück aufgerufen werden soll. Derzeit kann sich der Miniporttreiber nur für Fehlerprüfungscode 0xEA registrieren.

[in] Callback

Zeiger auf die HwVidBugcheckCallback-Funktion des Miniporttreibers. Diese Funktion darf nicht ausgelagert sein und darf nicht auf auslagerungsfähigen Code oder Daten verweisen. Der Miniporttreiber kann diesen Parameter auf NULL festlegen, um anzugeben, dass der Rückruf der Fehlerüberprüfung aufgehoben werden soll.

[in] BugcheckDataSize

Gibt die Summe der BUGCHECK_DATA_SIZE_RESERVED und die Anzahl der Daten an, die der Miniporttreiber für die Aufnahme in die Speicherabbilddatei bereitstellt. Der Wert dieses Parameters muss kleiner oder gleich 4000 sein. Der Miniporttreiber kann diesen Parameter auf 0 festlegen, um anzugeben, dass der Rückruf der Fehlerüberprüfung deaktiviert werden soll.

Rückgabewert

VideoPortRegisterBugcheckCallback gibt bei Erfolg NO_ERROR zurück. Andernfalls wird ein status Code zurückgegeben, der die Art des Fehlers angibt.

Hinweise

Wenn Sie einen Video-Miniporttreiber entwickeln, der unter Windows XP oder einem früheren NT-Basisbetriebssystem ausgeführt werden soll, können Sie die VideoPortGetProcAddress-Rückrufroutine verwenden, um die Adresse der VideoPortRegisterBugcheckCallback-Funktion zu ermitteln. Weitere Informationen finden Sie unter Verwenden von VideoPortGetProcAddress.

Ein Miniporttreiber kann sich für einen Rückruf registrieren, wenn eine bestimmte Art von Fehlerprüfung auftritt. Derzeit kann nur Fehlerüberprüfungscode 0xEA eingebunden werden. Wenn die Fehlerüberprüfung erfolgt, wird die von Minidriver bereitgestellte Rückruffunktion aufgerufen, und der Miniporttreiber kann Daten an die Speicherabbilddatei anfügen. Dies ist nützlich für das Sammeln statistischer Daten, wenn das direkte Debuggen nicht möglich ist.

Der Wert des Parameters BugcheckDataSize muss BUGCHECK_DATA_SIZE_RESERVED Bytes größer sein als die vom Miniporttreiber bereitgestellten Daten. Angenommen, der Miniporttreiber stellt DUMP_SIZE Bytes von Daten bereit, die in die Speicherabbilddatei geschrieben werden sollen. Dann sollte der Wert von BugcheckDataSize DUMP_SIZE + BUGCHECK_DATA_SIZE_RESERVED sein, und dieser Gesamtwert muss kleiner oder gleich 4000 sein.

Die konstante BUGCHECK_DATA_SIZE_RESERVED (in video.h definiert) ist in Buildumgebungen von Microsoft Windows Server 2003 und höher verfügbar. Verwenden Sie in der Windows XP SP1-Buildumgebung 48 anstelle von BUGCHECK_DATA_SIZE_RESERVED.

Der Miniporttreiber kann die Registrierung eines zuvor registrierten Rückrufs aufheben, indem er diese Funktion aufruft und NULL für den Callback-Parameter oder null für den DataSize-Parameter angibt.

Weitere Informationen finden Sie unter Unterstützung von Videoporttreibern für Rückrufe zur Fehlerüberprüfung.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows XP SP1 und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Desktop
Kopfzeile video.h (Video.h einschließen)
Bibliothek Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

Weitere Informationen

HwVidBugcheckCallback