Funzione FltGetBottomInstance (fltkernel.h)
FltGetBottomInstance restituisce un puntatore a un'istanza opaca per l'istanza del driver minifiltro, se presente, collegata nella parte inferiore dello stack di istanze per un determinato volume.
Sintassi
NTSTATUS FLTAPI FltGetBottomInstance(
[in] PFLT_VOLUME Volume,
[out] PFLT_INSTANCE *Instance
);
Parametri
[in] Volume
Puntatore opaco per il volume.
[out] Instance
Puntatore a una variabile allocata dal chiamante che riceve un puntatore a un'istanza opaca per l'istanza inferiore per questo volume. Questo parametro è obbligatorio e non può essere NULL.
Valore restituito
FltGetBottomInstance restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio:
Codice restituito | Descrizione |
---|---|
|
Non è stata trovata alcuna istanza corrispondente. Si tratta di un codice di avviso. |
Osservazioni
Si dice che un'istanza si trova nella inferiore dello stack di istanze del driver minifilter se l'altitudine è inferiore a quella di tutte le altre istanze collegate allo stesso volume. Il termine "altitudine" si riferisce alla posizione occupata da un'istanza nello stack di istanze del driver minifilter per un volume. Maggiore è l'altitudine, più lontana è l'istanza dal file system di base nello stack. Una sola istanza può essere collegata a una determinata altitudine su un determinato volume.
L'altitudine viene specificata da una stringa di altitudine , che è una stringa Unicode con conteggiata costituita da una o più cifre decimali da 0 a 9 e può includere un singolo separatore decimale. Ad esempio, "100.123456" e "03333" sono stringhe di altitudine valide.
La stringa "03333" rappresenta un'altitudine superiore a "100.123456". Gli zeri iniziali e finali vengono ignorati. In altre parole, un'istanza la cui altitudine è "03333" è più lontana dal file system di base rispetto a un'istanza la cui altitudine è "100,123456". Tuttavia, questo confronto è significativo solo se entrambe le istanze sono collegate allo stesso volume.
FltGetBottomInstance aggiunge un riferimento rundown al puntatore dell'istanza opaca restituito in *Istanza. Quando questo puntatore non è più necessario, il chiamante deve rilasciarlo chiamando FltObjectDereference. Pertanto, ogni chiamata riuscita a FltGetBottomInstance deve essere abbinata da una chiamata successiva a FltObjectDereference.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione | fltkernel.h (include Fltkernel.h) |
libreria | FltMgr.lib |
dll | Fltmgr.sys |
IRQL | <= APC_LEVEL |