EVT_SERCX_FILECLOSE Rückruffunktion (sercx.h)
Die EvtSerCxFileClose Ereignisrückruffunktion benachrichtigt den seriellen Controllertreiber, dass das Dateiobjekt, das das serielle Controllergerät darstellt, freigegeben wurde.
Syntax
EVT_SERCX_FILECLOSE EvtSercxFileclose;
void EvtSercxFileclose(
[in] WDFDEVICE Device
)
{...}
Parameter
[in] Device
Ein WDFDEVICE-Handle für das Framework-Geräteobjekt, das den seriellen Controller darstellt.
Rückgabewert
Nichts
Bemerkungen
Diese Funktion sollte das serielle Controllergerät aus dem Zustand entfernen, in dem es bereit ist, Daten zu empfangen und zu übertragen. Diese Funktion sollte Unterbrechungen deaktivieren, wenn Unterbrechungen aktiviert sind. Jeder Speicher, der nur für die Lebensdauer des Dateiobjekts zugewiesen wird, sollte entweder in dieser Funktion oder in der EvtSerCxFileCleanup Funktion zugeordnet werden.
Wenn der serielle Controllertreiber eine EvtSerCxFileCleanup--Funktion implementiert, ruft die serielle Frameworkerweiterung (SerCx) diese Funktion auf, bevor sie die EvtSerCxFileClose--Funktion aufruft. SerCx ruft die EvtSerCxFileCleanup Funktion auf, wenn ein Client das letzte Handle für das Dateiobjekt schließt, das das serielle Controllergerät darstellt. Nach diesem Aufruf empfängt der Treiber keine neuen Anforderungen für E/A-Vorgänge. SerCx ruft die EvtSerCxFileClose Funktion auf, wenn das Dateiobjekt losgelassen wird, was nur auftritt, nachdem alle ausstehenden E/A-Anforderungen abgeschlossen oder abgebrochen wurden.
Um eine EvtSerCxFileClose Rückruffunktion zu registrieren, muss der Treiber die SerCxInitialize-Methode aufrufen.
Weitere Informationen finden Sie unter Framework File Objects.
Beispiele
Der Funktionstyp für diesen Rückruf wird wie folgt in Sercx.h deklariert.
typedef VOID
EVT_SERCX_FILECLOSE(
__in WDFDEVICE Device
);
Um eine EvtSerCxFileClose Rückruffunktion zu definieren, die MyEvtSerCxFileClose
heißt, müssen Sie zunächst eine Funktionsdeklaration angeben, die statische Treiberüberprüfung (SDV) und andere Überprüfungstools erforderlich ist.
EVT_SERCX_FILECLOSE MyEvtSerCxFileClose;
Implementieren Sie dann die Rückruffunktion wie folgt.
VOID
MyEvtSerCxFileClose(
__in WDFDEVICE Device
)
{ ... }
Weitere Informationen zu SDV-Anforderungen für Funktionsdeklarationen finden Sie unter Deklarieren von Funktionen mithilfe von Funktionsrollentypen für KMDF-Treiber.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar ab Windows 8. |
Zielplattform- | Desktop |
Header- | sercx.h |
IRQL- | Bei IRQL-<= DISPATCH_LEVEL aufgerufen |