Schreiben einer DriverEntry-Routine für einen Minifiltertreiber
Jeder Dateisystem-Minifiltertreiber muss über eine DriverEntry-Routine verfügen. Die DriverEntry-Routine wird aufgerufen, wenn der Minifiltertreiber geladen wird.
Die DriverEntry-Routine führt eine globale Initialisierung durch, registriert den Minifiltertreiber und initiiert die Filterung. Diese Routine wird in einem Systemthreadkontext bei IRQL PASSIVE_LEVEL ausgeführt.
Die DriverEntry-Routine ist wie folgt definiert:
NTSTATUS
(*PDRIVER_INITIALIZE) (
IN PDRIVER_OBJECT DriverObject,
IN PUNICODE_STRING RegistryPath
);
DriverEntry verfügt über zwei Eingabeparameter. Das erste DriverObject ist das Treiberobjekt, das beim Laden des Minifiltertreibers erstellt wurde. Der zweite RegistryPath ist ein Zeiger auf eine gezählte Unicode-Zeichenfolge, die einen Pfad zum Registrierungsschlüssel des Minifiltertreibers enthält.
Die DriverEntry-Routine eines Minifiltertreibers muss die folgenden Schritte ausführen:
Führen Sie alle erforderlichen globalen Initialisierungen für den Minifiltertreiber aus.
Registrieren Sie den Minifiltertreiber, indem Sie FltRegisterFilter aufrufen.
Initiieren Sie die Filterung, indem Sie FltStartFiltering aufrufen.
Gibt einen entsprechenden NTSTATUS-Wert zurück.
Dieser Abschnitt umfasst Folgendes:
Registrieren des Minifilter-Treibers
Zurückgeben des Status von einer Minifilter DriverEntry-Routine