Registrazione del driver Minifilter
Ogni driver minifilter deve chiamare FltRegisterFilter dalla routine DriverEntry per aggiungersi all'elenco globale di driver minifilter registrati e fornire al gestore filtri un elenco di routine di callback e altre informazioni sul driver.
Nell'esempio MiniSpy il driver minifilter viene registrato come illustrato nell'esempio di codice seguente:
NTSTATUS status;
status = FltRegisterFilter(
DriverObject, //Driver
&FilterRegistration, //Registration
&MiniSpyData.FilterHandle); //RetFilter
FltRegisterFilter ha due parametri di input. Il primo, Driver, è il puntatore a oggetti driver ricevuto dal driver minifilter come parametro di input DriverObject per la routine DriverEntry . Il secondo, Registration, è un puntatore a una struttura FLT_REGISTRATION che contiene punti di ingresso alle routine di callback del driver minifilter.
FltRegisterFilter dispone inoltre di un parametro di output, RetFilter, che riceve un puntatore di filtro opaco per il driver minifilter. Questo puntatore di filtro è un parametro di input obbligatorio per molte routine di supporto FltXxx , tra cui FltStartFiltering e FltUnregisterFilter.