Funzione FltGetVolumeInformation (fltkernel.h)
La routine FltGetVolumeInformation fornisce informazioni su un determinato volume.
Sintassi
NTSTATUS FLTAPI FltGetVolumeInformation(
[in] PFLT_VOLUME Volume,
[in] FILTER_VOLUME_INFORMATION_CLASS InformationClass,
[out] PVOID Buffer,
[in] ULONG BufferSize,
[out] PULONG BytesReturned
);
Parametri
[in] Volume
Puntatore opaco per il volume. Questo parametro è obbligatorio e non può essere NULL.
[in] InformationClass
Tipo di informazioni richieste. Questo parametro è obbligatorio e deve essere uno dei valori seguenti.
Valore | Significato |
---|---|
FilterVolumeBasicInformation | Il parametro buffer riceve una struttura FILTER_VOLUME_BASIC_INFORMATION per il volume. |
FilterVolumeStandardInformation | Il parametro buffer riceve una struttura FILTER_VOLUME_STANDARD_INFORMATION per il volume. 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. Questo parametro è obbligatorio e non può essere NULL.
[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. Questo parametro è obbligatorio.
[out] BytesReturned
Puntatore a una variabile allocata dal chiamante che riceve il numero di byte restituiti nel buffer a cui buffer punta. Se il valore di input di BufferSize è troppo piccolo, FltGetVolumeInformation 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
FltGetVolumeInformation restituisce STATUS_SUCCESS o un codice di stato NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
|
È stato specificato un valore non valido per il parametro InformationClass. Ad esempio, se filterVolumeStandardInformation viene specificato in un sistema operativo prima di Windows Vista, la routine restituirà STATUS_INVALID_PARAMETER. Si tratta di un codice di errore. |
|
Il buffer a cui punta il parametro buffer non è sufficiente per archiviare le informazioni richieste. Si tratta di un codice di errore. |
Osservazioni
Dato un puntatore al volume opaco, ad esempio quello restituito dalla routine FltEnumerateVolumes, la routine FltGetVolumeInformation fornisce informazioni sul volume a cui punta il puntatore del volume opaco, passato attraverso il parametro volume. Si noti che il chiamante deve infine rilasciare il puntatore del volume opaco chiamando la routine FltObjectDereference.
La routine FltGetVolumeInformation restituisce informazioni per un singolo volume. Tuttavia, dato un elenco di puntatori a volumi opachi, la routine può essere usata in modo iterativo per creare un elenco di strutture di informazioni sul volume corrispondenti. In un elenco di questo tipo, è possibile che due o più strutture contengano nomi di volume identici. Per altre informazioni, vedere Understanding Volume Enumerations with Duplicate Volume Names.
Per elencare le informazioni sul volume per tutti i volumi noti al gestore filtri, chiamare FltEnumerateVolumeInformation.
L'elenco seguente contiene informazioni correlate, che possono essere usate:
- Per enumerare tutti i driver minifiltri registrati nel sistema, chiamare la routine FltEnumerateFilters.
- Per ottenere informazioni sulle istanze del driver minifiltro collegate a un determinato volume, chiamare la routine FltEnumerateInstanceInformationByVolume.
- Per enumerare le istanze del driver minifiltro per un determinato driver o volume minifilter, chiamare la routine fltEnumerateInstances.
- Per enumerare tutti i volumi nel sistema, chiamare la routine FltEnumerateVolumes.
- Per ottenere un puntatore opaco per il volume rappresentato da un determinato oggetto dispositivo del volume (VDO), chiamare la routine FltGetVolumeFromDeviceObject.
- Per ottenere un puntatore opaco per il volume in cui risiede un flusso di file specificato, chiamare la routine FltGetVolumeFromFileObject.
- Per ottenere un puntatore opaco per il volume a cui è collegata un'istanza del driver minifilter specificata, chiamare la routine FltGetVolumeFromInstance.
- Per ottenere un puntatore opaco per il volume il cui nome corrisponde a un determinato nome di volume, chiamare la routine FltGetVolumeFromName.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Questa routine è disponibile a partire da Windows Vista. |
piattaforma di destinazione | Universale |
intestazione | fltkernel.h (include FltKernel.h) |
libreria | FltMgr.lib |
dll | Fltmgr.sys |
IRQL | <= APC_LEVEL |
Vedere anche
FILTER_VOLUME_BASIC_INFORMATION
FILTER_VOLUME_STANDARD_INFORMATION