Freigeben über


FltGetVolumeFromInstance-Funktion (fltkernel.h)

Die FltGetVolumeFromInstance-Routine gibt einen undurchsichtigen Zeiger für das Volume zurück, an das ein bestimmter Minifiltertreiber instance angefügt ist.

Syntax

NTSTATUS FLTAPI FltGetVolumeFromInstance(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_VOLUME   *RetVolume
);

Parameter

[in] Instance

Undurchsichtiger instance Zeiger für die instance.

[out] RetVolume

Zeiger auf eine vom Aufrufer zugewiesene Variable, die einen undurchsichtigen Zeiger für das Volume empfängt. Dieser Parameter ist erforderlich und darf nicht NULL sein.

Rückgabewert

FltGetVolumeFromInstance gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. den folgenden:

Rückgabecode Beschreibung
STATUS_FLT_DELETING_OBJECT
Das Volume, an das der Minifiltertreiber instance angefügt ist, wird abgerissen. Dies ist ein Fehlercode.

Hinweise

FltGetVolumeFromInstance fügt einen Rundownverweis auf den undurchsichtigen Volumezeiger hinzu, der im RetVolume-Parameter zurückgegeben wird. Wenn dieser Zeiger nicht mehr benötigt wird, muss der Aufrufer ihn durch Aufrufen von FltObjectDereference freigeben. Daher muss jeder erfolgreiche Aufruf von FltGetVolumeFromInstance durch einen nachfolgenden Aufruf von FltObjectDereference abgeglichen werden.

Um einen undurchsichtigen Filterzeiger für den Minifiltertreiber abzurufen, der eine bestimmte instance erstellt hat, rufen Sie FltGetFilterFromInstance auf.

Um einen Zeiger auf das Geräteobjekt für ein bestimmtes Volume abzurufen, rufen Sie FltGetDeviceObject auf.

Rufen Sie FltQueryVolumeInformation auf, um detaillierte Informationen zu dem Volume zu erhalten, an das eine bestimmte instance angefügt ist.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header fltkernel.h (fltkernel.h einschließen)
Bibliothek FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Weitere Informationen

FltGetDeviceObject

FltGetFilterFromInstance

FltObjectDereference

FltQueryVolumeInformation