Funzione FltEnumerateInstanceInformationByFilter (fltkernel.h)
La routine FltEnumerateInstanceInstanceInformationByFilter fornisce informazioni sulle istanze di un determinato driver minifilter.
Sintassi
NTSTATUS FLTAPI FltEnumerateInstanceInformationByFilter(
[in] PFLT_FILTER Filter,
[in] ULONG Index,
[in] INSTANCE_INFORMATION_CLASS InformationClass,
[out] PVOID Buffer,
[in] ULONG BufferSize,
[out] PULONG BytesReturned
);
Parametri
[in] Filter
Puntatore di filtro opaco per il chiamante.
[in] Index
Indice in base zero dell'istanza per cui sono richieste le informazioni.
[in] InformationClass
Tipo di informazioni richieste. Questo parametro può avere uno dei valori seguenti.
Valore | Significato |
---|---|
InstanceBasicInformation | Il buffer a cui punta il parametro Buffer riceve una struttura INSTANCE_BASIC_INFORMATION per l'istanza. |
InstanceFullInformation | Il buffer a cui punta il parametro Buffer riceve una struttura INSTANCE_FULL_INFORMATION per l'istanza. |
InstancePartialInformation | Il buffer a cui punta il parametro Buffer riceve una struttura INSTANCE_PARTIAL_INFORMATION per l'istanza. |
InstanceAggregateStandardInformation | Il buffer a cui punta il parametro Buffer riceve una struttura INSTANCE_AGGREGATE_STANDARD_INFORMATION per l'istanza. La parte LegacyFilter della struttura non viene utilizzata. Questa struttura è disponibile a partire da Windows Vista. |
[out] Buffer
Puntatore a un buffer allocato dal chiamante che riceve le informazioni richieste. Il tipo delle informazioni restituite nel buffer è definito dal parametro InformationClass .
[in] BufferSize
Dimensioni, in byte, del buffer a cui punta il parametro Buffer . Il chiamante deve impostare questo parametro in base al valore InformationClass specificato.
[out] BytesReturned
Puntatore a una variabile allocata dal chiamante che riceve il numero di byte restituiti nel buffer a cui punta Buffer . Se il valore di input di BufferSize è troppo piccolo, FltEnumerateInstanceInstanceInformationByFilter restituisce STATUS_BUFFER_TOO_SMALL e imposta questa variabile sul numero di byte necessari per archiviare le informazioni richieste. Questo parametro è obbligatorio e non può essere NULL.
Valore restituito
FltEnumerateInstanceInformationByFilter restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
|
Buffer a cui punta il parametro Buffer non è sufficiente per archiviare le informazioni richieste. Si tratta di un codice di errore. |
|
È stata trovata un'istanza corrispondente, ma viene interrotta. Si tratta di un codice di errore. |
|
È stato specificato un valore non valido per il parametro InformationClass . Ad esempio, se FilterAggregateStandardInformation viene specificato in un sistema operativo prima di Windows Vista, la routine restituirà STATUS_INVALID_PARAMETER. Si tratta di un codice di errore. |
|
Non sono presenti più voci nell'elenco di istanze del driver minifilter. Si tratta di un codice di avviso. |
Commenti
Il parametro Index è semplicemente un modo per FltEnumerateInstanceInformationByFilter per selezionare tra le istanze nell'elenco di istanze per il driver minifilter specificato da Filter. Poiché le istanze del driver minifilter nell'elenco di istanze possono cambiare in qualsiasi momento, due chiamate a FltEnumerateInstanceInstanceInformationByFilter con gli stessi valori Index e Filter non sono garantiti per restituire lo stesso risultato.
Per enumerare tutti i driver minifilter registrati, chiamare FltEnumerateFilters.
Per elencare le informazioni sui filtri per tutti i driver minifilter registrati, chiamare FltEnumerateFilterInformation.
Per ottenere informazioni sul filtro per un determinato driver minifilter, chiamare FltGetFilterInformation.
Per enumerare tutte le istanze del driver minifilter in un determinato volume, chiamare FltEnumerateInstanceInstanceInformationByVolume.
Per enumerare le istanze di tutti i driver minifilter in tutti i volumi, chiamare FltEnumerateInstances.
Per enumerare tutti i volumi noti a Filter Manager, chiamare FltEnumerateVolumes.
.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include FltKernel.h) |
Libreria | FltMgr.lib |
IRQL | <= APC_LEVEL |
Vedi anche
FltEnumerateInstanceInformationByVolume