Funzione FltRegisterFilter (fltkernel.h)
FltRegisterFilter registra un driver minifilter.
Sintassi
NTSTATUS FLTAPI FltRegisterFilter(
[in] PDRIVER_OBJECT Driver,
[in] const FLT_REGISTRATION *Registration,
[out] PFLT_FILTER *RetFilter
);
Parametri
[in] Driver
Puntatore all'oggetto driver per il driver minifilter. Deve trattarsi dello stesso puntatore a oggetti driver passato come input alla routine DriverEntry del driver minifilter.
[in] Registration
Puntatore a una struttura di registrazione del driver minifilter allocata dal chiamante (FLT_REGISTRATION).
[out] RetFilter
Puntatore a una variabile allocata dal chiamante che riceve un puntatore di filtro opaco per il chiamante.
Valore restituito
FltRegisterFilter restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
|
FltRegisterFilter ha rilevato un errore di allocazione del pool. Si tratta di un codice di errore. |
|
I tipi validi sono:
|
|
Gestione filtri non è stato inizializzato quando il filtro ha tentato di registrare. Assicurarsi che Gestione filtri sia caricato come driver. Si tratta di un codice di errore. |
|
La chiave del servizio di filtro non viene trovata nel Registro di sistema.
-oppure- L'istanza del filtro non è registrata. |
Commenti
Ogni driver minifilter deve chiamare FltRegisterFilter dalla routine DriverEntry per aggiungersi all'elenco globale di driver minifilter registrati e fornire a Gestione filtri un elenco di funzioni di callback e altre informazioni sul driver minifilter.
FltRegisterFilter restituisce un puntatore di filtro opaco per il driver minifilter in *RetFilter. Questo valore del puntatore identifica in modo univoco il driver minifilter e rimane costante finché il driver minifilter viene caricato. Il driver minifilter deve salvare questo puntatore, perché è un parametro obbligatorio per FltStartFiltering e FltUnregisterFilter.
Dopo aver chiamato FltRegisterFilter, un driver minifilter chiama in genere FltStartFiltering per iniziare a filtrare le operazioni di I/O.
Un driver minifilter può solo chiamare FltRegisterFilter per registrarsi, non un altro driver minifilter.
Per annullare la registrazione, un driver minifilter chiama FltUnregisterFilter..
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include Fltkernel.h) |
Libreria | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |