Freigeben über


EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION Rückruffunktion (sercx.h)

Die EvtSerCx2PioReceiveCleanupTransaction Ereignisrückruffunktion wird von Version 2 der seriellen Framework-Erweiterung (SerCx2) aufgerufen, um den Hardwarestatus des seriellen Controllers zu bereinigen, nachdem eine PIO-Empfangstransaktion beendet wurde.

Syntax

EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION EvtSercx2PioReceiveCleanupTransaction;

void EvtSercx2PioReceiveCleanupTransaction(
  [in] SERCX2PIORECEIVE PioReceive
)
{...}

Parameter

[in] PioReceive

Ein SERCX2PIORECEIVE Handle für ein PIO-Empfangsobjekt. Der serielle Controllertreiber hat zuvor den SerCx2PioReceiveCreate Methode aufgerufen, um dieses Objekt zu erstellen.

Rückgabewert

Nichts

Bemerkungen

Ihr serieller Controllertreiber kann diese Funktion als Option implementieren. Wenn implementiert, registriert der Treiber die Funktion im Aufruf des SerCx2PioReceiveCreate-Methode, die das PIO-Empfangsobjekt erstellt.

Der serielle Controllertreiber sollte einen EvtSerCx2PioReceiveCleanupTransaction--Funktion implementieren, wenn er den seriellen Controllerstatus am Ende einer PIO-Empfangstransaktion bereinigen muss. SerCx2 ruft diese Funktion auf, wenn sie implementiert ist, nachdem eine PIO-Empfangstransaktion beendet wurde. Als Reaktion auf den EvtSerCx2PioReceiveCleanupTransaction Aufruf muss der serielle Controllertreiber den SerCx2PioReceiveCleanupTransactionComplete Methode aufrufen, um SerCx2 zu benachrichtigen, nachdem die Bereinigung abgeschlossen wurde.

Weitere Informationen finden Sie unter SerCx2 PIO-Receive Transactions.

Beispiele

Um eine EvtSerCx2PioReceiveCleanupTransaction Rückruffunktion zu definieren, müssen Sie zuerst eine Funktionsdeklaration bereitstellen, die den Typ der rückruffunktion identifiziert, die Sie definieren. Windows stellt eine Reihe von Rückruffunktionstypen für Treiber bereit. Durch das Deklarieren einer Funktion mithilfe der Rückruffunktionstypen können Codeanalyse für Treiber, statische Treiberüberprüfung (SDV) und andere Überprüfungstools Fehler finden, und es ist eine Anforderung zum Schreiben von Treibern für das Windows-Betriebssystem.

Um beispielsweise eine EvtSerCx2PioReceiveCleanupTransaction Rückruffunktion zu definieren, die MyPioReceiveCleanupTransactionheißt, verwenden Sie den EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION Funktionstyp, wie in diesem Codebeispiel gezeigt:

EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION  MyPioReceiveCleanupTransaction;

Implementieren Sie dann die Rückruffunktion wie folgt:

_Use_decl_annotations_
VOID
  MyPioReceiveCleanupTransaction(
    SERCX2PIORECEIVE  PioReceive
    )
  {...}

Der EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION Funktionstyp wird in der Headerdatei Sercx.h definiert. Um Fehler genauer zu identifizieren, wenn Sie die Codeanalysetools ausführen, müssen Sie der Funktionsdefinition die Use_decl_annotations Anmerkung hinzufügen. Die Use_decl_annotations Anmerkung stellt sicher, dass die Anmerkungen, die auf den EVT_SERCX2_PIO_RECEIVE_CLEANUP_TRANSACTION Funktionstyp in der Headerdatei angewendet werden, verwendet werden. Weitere Informationen zu den Anforderungen für Funktionsdeklarationen finden Sie unter Deklarieren von Funktionen mithilfe von Funktionsrollentypen für KMDF-Treiber. Weitere Informationen zu Use_decl_annotationsfinden Sie unter Annotating Function Behavior.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows 8.1.
Zielplattform- Desktop
Header- sercx.h
IRQL- Wird bei IRQL <= DISPATCH_LEVEL aufgerufen.

Siehe auch

SERCX2PIORECEIVE

SerCx2PioReceiveCleanupTransactionComplete

SerCx2PioReceiveCreate