Condividi tramite


Funzione FltGetVolumeFromName (fltkernel.h)

La routine FltGetVolumeFromName restituisce un puntatore opaco per il volume il cui nome corrisponde al valore del parametro VolumeName .

Sintassi

NTSTATUS FLTAPI FltGetVolumeFromName(
  [in]  PFLT_FILTER      Filter,
  [in]  PCUNICODE_STRING VolumeName,
  [out] PFLT_VOLUME      *RetVolume
);

Parametri

[in] Filter

Puntatore di filtro opaco per il chiamante. Questo parametro è obbligatorio e non può essere NULL.

[in] VolumeName

Puntatore a una struttura UNICODE_STRING contenente il nome del volume , ad esempio "\Device\HarddiskVolume1", "\DosDevices\D:", "\?? \D:", o "D:"). Questo parametro è obbligatorio e non può essere NULL.

[out] RetVolume

Puntatore a una variabile allocata dal chiamante che riceve un puntatore opaco per il volume. Questo parametro è obbligatorio e non può essere NULL.

Valore restituito

FltGetVolumeFromName restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:

Codice restituito Descrizione
STATUS_ACCESS_DENIED Il chiamante non ha FILE_READ_DATA accesso al volume. Si tratta di un codice di errore.
STATUS_FLT_DELETING_OBJECT Il volume viene eliminato. Si tratta di un codice di errore.
STATUS_INVALID_PARAMETER È stato specificato un valore non valido per il parametro VolumeName . Si tratta di un codice di errore.
STATUS_FLT_VOLUME_NOT_FOUND Non è stato trovato alcun volume corrispondente. Si tratta di un codice di errore.

Commenti

FltGetVolumeFromName cerca l'elenco globale di volumi di Filter Manager per un volume il cui nome corrisponde a VolumeName. Il chiamante deve avere FILE_READ_DATA accesso al volume. Per individuare la struttura del volume, FltGetVolumeFromName deve prima aprire il volume.

FltGetVolumeFromName aggiunge un riferimento di rundown al puntatore del volume opaco restituito nel parametro RetVolume . Quando questo puntatore non è più necessario, il chiamante deve rilasciarlo chiamando FltObjectDereference. Pertanto ogni chiamata riuscita a FltGetVolumeFromName deve essere corrispondente a una chiamata successiva a FltObjectDereference.

Per ottenere il nome del volume per un determinato volume, chiamare FltGetVolumeName.

Per ottenere il nome GUID del volume per un determinato volume, chiamare FltGetVolumeGuidName.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione fltkernel.h (includere Fltkernel.h)
Libreria FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

Vedi anche

FltGetFilterFromName

FltGetVolumeGuidName

FltGetVolumeInstanceFromName

FltGetVolumeName

FltObjectDereference

UNICODE_STRING