Schreiben von Dispatchroutinen
Die Verarbeitung von E/A-Anforderungspaketen (IRP) beginnt in einer Dispatchroutine, die der Treiber registriert, um einen IRP-Hauptfunktionscode (IRP_MJ_*XXX) zu verarbeiten. Die DriverEntry-Routine des Treibers exportiert Einstiegspunkte für Dispatchroutinen in einer Dispatchtabelle innerhalb der DRIVER_OBJECT* Struktur des Treibers.
Ein Treiber kann eine separate Dispatchroutine für jeden wichtigen E/A-Funktionscode bereitstellen, den er verarbeitet. Alternativ können Dispatchroutinen geschrieben werden, um mehrere E/A-Funktionscodes zu verarbeiten.
Dieser Abschnitt enthält die folgenden Themen:
Routinefunktionen für den Versand
Wann sollte der E/A-Stapelspeicherort des Treibers überprüft werden?
DispatchCreate, DispatchClose und DispatchCreateCloseClose Routinen
DispatchRead-, DispatchWrite- und DispatchReadWrite-Routinen
DispatchDeviceControl- und DispatchInternalDeviceControl-Routinen
DispatchQueryInformation-Routinen