Freigeben über


FltGetVolumeInformation-Funktion (fltkernel.h)

Die FltGetVolumeInformation-Routine stellt Informationen zu einem bestimmten Volume bereit.

Syntax

NTSTATUS FLTAPI FltGetVolumeInformation(
  [in]  PFLT_VOLUME                     Volume,
  [in]  FILTER_VOLUME_INFORMATION_CLASS InformationClass,
  [out] PVOID                           Buffer,
  [in]  ULONG                           BufferSize,
  [out] PULONG                          BytesReturned
);

Parameter

[in] Volume

Undurchsichtiger Zeiger für das Volume. Dieser Parameter ist erforderlich und darf nicht NULL sein.

[in] InformationClass

Typ der angeforderten Informationen. Dieser Parameter ist erforderlich und muss einer der folgenden Werte sein.

Wert Bedeutung
FilterVolumeBasicInformation Der Parameter Buffer empfängt eine FILTER_VOLUME_BASIC_INFORMATION-Struktur für das Volume.
FilterVolumeStandardInformation Der Buffer-Parameter empfängt eine FILTER_VOLUME_STANDARD_INFORMATION-Struktur für das Volume. Diese Struktur ist ab Windows Vista verfügbar.

[out] Buffer

Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die angeforderten Informationen empfängt. Der Typ der im Puffer zurückgegebenen Informationen wird durch den InformationClass-Parameter definiert. Dieser Parameter ist erforderlich und darf nicht NULL sein.

[in] BufferSize

Größe des Puffers in Byte, auf den der Buffer-Parameter zeigt. Der Aufrufer sollte diesen Parameter entsprechend dem angegebenen InformationClass-Wert festlegen. Dieser Parameter ist erforderlich.

[out] BytesReturned

Zeiger auf eine vom Aufrufer zugeordnete Variable, die die Anzahl der Bytes empfängt, die im Puffer zurückgegeben werden, auf den Buffer verweist. Wenn der Eingabewert von BufferSize zu klein ist, gibt FltGetVolumeInformation STATUS_BUFFER_TOO_SMALL zurück und legt diese Variable auf die Anzahl von Bytes fest, die zum Speichern der angeforderten Informationen erforderlich sind. Dieser Parameter ist erforderlich und darf nicht NULL sein.

Rückgabewert

FltGetVolumeInformation gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-status-Code zurück, z. B. einen der folgenden:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Für den InformationClass-Parameter wurde ein ungültiger Wert angegeben. Wenn beispielsweise FilterVolumeStandardInformation auf einem Betriebssystem vor Windows Vista angegeben ist, gibt die Routine STATUS_INVALID_PARAMETER zurück. Dies ist ein Fehlercode.
STATUS_BUFFER_TOO_SMALL
Der Puffer, auf den der Buffer-Parameter verweist, ist nicht groß genug, um die angeforderten Informationen zu speichern. Dies ist ein Fehlercode.

Hinweise

Bei einem undurchsichtigen Volumezeiger, wie er von der FltEnumerateVolumes-Routine zurückgegeben wird, stellt die FltGetVolumeInformation-Routine Informationen über das Volume bereit, auf das der undurchsichtige Volumezeiger verweist, der über den Volume-Parameter übergeben wird. Beachten Sie, dass der Aufrufer den undurchsichtigen Volumezeiger schließlich freigeben muss, indem er die FltObjectDereference-Routine aufruft .

Die FltGetVolumeInformation-Routine gibt Informationen für ein einzelnes Volume zurück. Angesichts einer Liste von undurchsichtigen Volumezeigern kann die Routine jedoch iterativ verwendet werden, um eine Liste der entsprechenden Volumeinformationsstrukturen zu erstellen. In einer solchen Liste ist es möglich, dass zwei oder mehr der Strukturen identische Volumenamen enthalten. Weitere Informationen finden Sie unter Grundlegendes zu Volumeenumeration mit doppelten Volumenamen.

Rufen Sie FltEnumerateVolumeInformation auf, um Volumeinformationen für alle Volumes aufzulisten, die dem Filter-Manager bekannt sind.

Die folgende Liste enthält verwandte Informationen, die von Nutzen sein können:

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Diese Routine ist ab Windows Vista verfügbar.
Zielplattform Universell
Header fltkernel.h (fltKernel.h einschließen)
Bibliothek FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Weitere Informationen

FILTER_VOLUME_BASIC_INFORMATION

FILTER_VOLUME_STANDARD_INFORMATION

FLT_RELATED_OBJECTS

FltEnumerateFilters

FltEnumerateInstanceInformationByVolume

FltEnumerateInstances

FltEnumerateVolumeInformation

FltEnumerateVolumes

FltGetVolumeFromDeviceObject

FltGetVolumeFromFileObject

FltGetVolumeFromInstance

FltGetVolumeFromName