FltEnumerateInstanceInformationByFilter-Funktion (fltkernel.h)
Die FltEnumerateInstanceInformationByFilter Routine stellt Informationen zu Instanzen eines bestimmten Minifiltertreibers bereit.
Syntax
NTSTATUS FLTAPI FltEnumerateInstanceInformationByFilter(
[in] PFLT_FILTER Filter,
[in] ULONG Index,
[in] INSTANCE_INFORMATION_CLASS InformationClass,
[out] PVOID Buffer,
[in] ULONG BufferSize,
[out] PULONG BytesReturned
);
Parameter
[in] Filter
Undurchsichtiger Filterzeiger für den Aufrufer.
[in] Index
Nullbasierter Index der Instanz, für die die Informationen angefordert werden.
[in] InformationClass
Typ der angeforderten Informationen. Dieser Parameter kann einen der folgenden Werte aufweisen.
Wert | Bedeutung |
---|---|
InstanceBasicInformation- | Der Puffer, auf den der parameter Buffer verweist, empfängt eine INSTANCE_BASIC_INFORMATION Struktur für die Instanz. |
InstanceFullInformation- | Der Puffer, auf den der parameter Buffer verweist, empfängt eine INSTANCE_FULL_INFORMATION Struktur für die Instanz. |
InstancePartialInformation- | Der Puffer, auf den der parameter Buffer verweist, empfängt eine INSTANCE_PARTIAL_INFORMATION Struktur für die Instanz. |
InstanceAggregateStandardInformation | Der Puffer, auf den der parameter Buffer verweist, empfängt eine INSTANCE_AGGREGATE_STANDARD_INFORMATION Struktur für die Instanz. Der LegacyFilter- Teil der Struktur wird nicht verwendet. Diese Struktur ist ab Windows Vista verfügbar. |
[out] Buffer
Zeigen Sie auf einen vom Aufrufer zugewiesenen Puffer, der die angeforderten Informationen empfängt. Der Typ der im Puffer zurückgegebenen Informationen wird durch den parameter InformationClass definiert.
[in] BufferSize
Größe des Puffers, auf den der Buffer Parameter verweist, in Byte. Der Aufrufer sollte diesen Parameter gemäß dem angegebenen InformationClass-wert festlegen.
[out] BytesReturned
Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Anzahl der im Puffer zurückgegebenen Bytes empfängt, auf die Buffer verweist. Wenn der Eingabewert von BufferSize zu klein ist, gibt FltEnumerateInstanceInformationByFilter STATUS_BUFFER_TOO_SMALL zurück und legt diese Variable auf die Anzahl der Bytes fest, die zum Speichern der angeforderten Informationen erforderlich sind. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
Rückgabewert
FltEnumerateInstanceInformationByFilter gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. einen der folgenden:
Rückgabecode | Beschreibung |
---|---|
|
Der Puffer, auf den der Buffer Parameter verweist, ist nicht groß genug, um die angeforderten Informationen zu speichern. Dies ist ein Fehlercode. |
|
Es wurde eine übereinstimmende Instanz gefunden, aber sie wird heruntergerissen. Dies ist ein Fehlercode. |
|
Für den parameter InformationClass wurde ein ungültiger Wert angegeben. Wenn beispielsweise FilterAggregateStandardInformation auf einem Betriebssystem vor Windows Vista angegeben wird, gibt die Routine STATUS_INVALID_PARAMETER zurück. Dies ist ein Fehlercode. |
|
Es gibt keine weiteren Einträge in der Instanzliste des Minifiltertreibers. Dies ist ein Warncode. |
Bemerkungen
Der Index Parameter ist einfach eine Möglichkeit für FltEnumerateInstanceInformationByFilter , zwischen Instanzen in der Instanzliste für den durch Filterangegebenen Minifiltertreiber auszuwählen. Da sich die Minifiltertreiberinstanzen in der Instanzliste jederzeit ändern können, werden zwei Aufrufe von FltEnumerateInstanceInformationByFilter mit demselben Index- und Filter- Werten nicht garantiert dasselbe Ergebnis zurückgeben.
Rufen Sie zum Aufzählen aller registrierten Minifiltertreiber FltEnumerateFiltersauf.
Rufen Sie FltEnumerateFilterInformationauf, um Filterinformationen für alle registrierten Minifiltertreiber auflisten zu können.
Rufen Sie FltGetFilterInformationauf, um Filterinformationen für einen bestimmten Minifiltertreiber abzurufen.
Rufen Sie FltEnumerateInstanceInformationByVolumeauf, um alle Minifiltertreiberinstanzen auf einem bestimmten Volume aufzurufen.
Rufen Sie FltEnumerateInstancesauf, um Instanzen aller Minifiltertreiber auf allen Volumes auflisten zu können.
Rufen Sie FltEnumerateVolumesauf, um alle Volumes aufzählen zu können, die dem Filter-Manager bekannt sind.
.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | fltkernel.h (include FltKernel.h) |
Library | FltMgr.lib |
IRQL- | <= APC_LEVEL |
Siehe auch
FltEnumerateInstanceInformationByVolume