Freigeben über


FltQueryVolumeInformationFile-Funktion (fltkernel.h)

FltQueryVolumeInformationFile ruft Volumeinformationen für eine bestimmte Datei, ein verzeichnis, ein bestimmtes Speichergerät oder volume ab.

Syntax

NTSTATUS FLTAPI FltQueryVolumeInformationFile(
  [in]            PFLT_INSTANCE        Instance,
  [in]            PFILE_OBJECT         FileObject,
  [out]           PVOID                FsInformation,
  [in]            ULONG                Length,
  [in]            FS_INFORMATION_CLASS FsInformationClass,
  [out, optional] PULONG               LengthReturned
);

Parameter

[in] Instance

Undurchsichtiger instance Zeiger für den Aufrufer. Dieser Parameter ist erforderlich und darf nicht NULL sein.

[in] FileObject

Dateiobjektzeiger für eine geöffnete Datei, ein Verzeichnis, ein Speichergerät oder ein Volume. Dieser Parameter ist erforderlich und darf nicht NULL sein.

[out] FsInformation

Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der Informationen zur Datei empfängt. Der FsInformationClass-Parameter gibt den Typ der Informationen an. Dieser Parameter ist erforderlich und darf nicht NULL sein.

[in] Length

Größe des FsInformation-Puffers in Bytes.

[in] FsInformationClass

Typ der zurückzugebenden Volumeinformationen. Einer der folgenden:

Wert Bedeutung
FileFsAttributeInformation
Gibt eine FILE_FS_ATTRIBUTE_INFORMATION-Struktur zurück, die Attributinformationen zum dateisystem enthält, das für das Volume verantwortlich ist.
FileFsControlInformation
Gibt eine FILE_FS_CONTROL_INFORMATION-Struktur zurück, die Dateisystemsteuerungsinformationen zum Volume enthält.
FileFsDeviceInformation
Gibt eine FILE_FS_DEVICE_INFORMATION-Struktur zurück, die Geräteinformationen für das Volume enthält.
FileFsDriverPathInformation
Gibt eine FILE_FS_DRIVER_PATH_INFORMATION-Struktur zurück, die Informationen darüber enthält, ob sich ein angegebener Treiber im E/A-Pfad für das Volume befindet. Der Aufrufer muss den Namen des Treibers in der FILE_FS_DRIVER_PATH_INFORMATION-Struktur speichern, bevor FltQueryVolumeInformationFile aufgerufen wird.
FileFsFullSizeInformation
Gibt eine FILE_FS_FULL_SIZE_INFORMATION-Struktur zurück, die Informationen über die Gesamtmenge des verfügbaren Speicherplatzes auf dem Volume enthält.
FileFsObjectIdInformation
Gibt eine FILE_FS_OBJECTID_INFORMATION-Struktur zurück, die dateisystemspezifische Objekt-ID-Informationen für das Volume enthält. Beachten Sie, dass dies nicht mit dem (GUID-basierten) eindeutigen Volumenamen identisch ist, der vom Betriebssystem zugewiesen wird.
FileFsSizeInformation
Gibt eine FILE_FS_SIZE_INFORMATION-Struktur zurück, die Informationen über den Speicherplatz auf dem Volume enthält, der dem Benutzer verfügbar ist, der dem aufrufenden Thread zugeordnet ist.
FileFsVolumeInformation
Gibt einen FILE_FS_VOLUME_INFORMATION zurück, der Informationen zum Volume enthält, z. B. Volumebezeichnung, Seriennummer und Erstellungszeit.
FileFsSectorSizeInformation
Gibt eine FILE_FS_SECTOR_SIZE_INFORMATION-Struktur zurück, die Informationen über die physischen und logischen Sektorgrößen eines Volumes enthält.

[out, optional] LengthReturned

Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Größe der im FsInformation-Puffer zurückgegebenen Informationen in Bytes empfängt. Dieser Parameter ist optional und kann NULL sein.

Rückgabewert

FltQueryVolumeInformationFile gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert wie den folgenden zurück:

Rückgabecode Beschreibung
STATUS_VOLUME_DISMOUNTED
Das Volume ist derzeit nicht eingebunden. Dies ist ein Fehlercode.

Hinweise

FltQueryVolumeInformationFile ruft Volumeinformationen für eine bestimmte Datei, ein verzeichnis, ein bestimmtes Speichergerät oder volume ab.

Wenn das FileObject ein direkt geöffnetes Gerät darstellt, kann nur FileFsDeviceInformation als Wert von FsInformationClass angegeben werden.

FltQueryVolumeInformationFile gibt null in jedem Element einer FILE_FS_XXX_INFORMATION-Struktur zurück, die von einem bestimmten Dateisystem nicht unterstützt wird.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header fltkernel.h (include Fltkernel.h)
Bibliothek FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

Weitere Informationen

FILE_FS_ATTRIBUTE_INFORMATION

FILE_FS_CONTROL_INFORMATION

FILE_FS_DEVICE_INFORMATION

FILE_FS_DRIVER_PATH_INFORMATION

FILE_FS_FULL_SIZE_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FILE_FS_SECTOR_SIZE_INFORMATION

FILE_FS_SIZE_INFORMATION

FILE_FS_VOLUME_INFORMATION

FltSetInformationFile