FltQueryInformationFile-Funktion (fltkernel.h)
FltQueryInformationFile Informationen für eine bestimmte Datei abruft.
Syntax
NTSTATUS FLTAPI FltQueryInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass,
[out, optional] PULONG LengthReturned
);
Parameter
[in] Instance
Undurchsichtiger Instanzzeiger für den Aufrufer. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
[in] FileObject
Dateiobjektzeiger für die Datei. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
[out] FileInformation
Zeigen Sie auf einen vom Aufrufer zugewiesenen Puffer, der Informationen über die Datei empfängt. Der parameter FileInformationClass gibt den Informationstyp an. Dieser Parameter ist erforderlich und kann nicht NULL-werden.
[in] Length
Größe des FileInformation- Puffers in Byte.
[in] FileInformationClass
Ein FILE_INFORMATION_CLASS Wert, der den Typ der Dateiinformationen angibt, die im FileInformation- Puffer zurückgegeben werden sollen.
[out, optional] LengthReturned
Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Größe der im FileInformation Puffer zurückgegebenen Informationen in Bytes empfängt. Dieser Parameter ist optional und kann NULL-werden.
Rückgabewert
FltQueryInformationFile- gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert wie den folgenden zurück:
Rückgabecode | Beschreibung |
---|---|
|
Die Datei befindet sich auf einem Volume, das derzeit nicht bereitgestellt wird. Dies ist ein Fehlercode. |
Bemerkungen
Ein Minifiltertreiber ruft FltQueryInformationFile auf, um Informationen für die datei abzurufen, die durch FileObject-identifiziert wird. Die Datei muss zurzeit geöffnet sein.
FltQueryInformationFile- gibt null in einem Element einer FILE_XXX-_INFORMATION-Struktur zurück, die von einem bestimmten Dateisystem nicht unterstützt wird.
Aufrufer von FltQueryInformationFile- müssen unter IRQL = PASSIVE_LEVEL und mit APCs ausgeführt werden, dieaktiviert sind.
HINWEIS: Rufen Sie diese Routine nicht mit einem IRP-Wert auf nicht NULL auf, da dies zu einem System-Deadlock führen kann.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | fltkernel.h (include Fltkernel.h) |
Library | FltMgr.lib |
DLL- | Fltmgr.sys |
IRQL- | PASSIVE_LEVEL (siehe Abschnitt "Hinweise") |