Freigeben über


NtQueryInformationByName-Funktion (ntifs.h)

NtQueryInformationByName gibt die angeforderten Informationen zu einer Datei zurück, die durch den Dateinamen angegeben wird.

Syntax

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationByName(
  [in]  POBJECT_ATTRIBUTES     ObjectAttributes,
  [out] PIO_STATUS_BLOCK       IoStatusBlock,
  [out] PVOID                  FileInformation,
  [in]  ULONG                  Length,
  [in]  FILE_INFORMATION_CLASS FileInformationClass
);

Parameter

[in] ObjectAttributes

Zeiger auf eine OBJECT_ATTRIBUTES Struktur, die die Attribute der Datei enthält, einschließlich des Dateinamens.

[out] IoStatusBlock

Zeiger auf eine IO_STATUS_BLOCK-Struktur, die die E/A-status des Aufrufers enthält.

[out] FileInformation

Zeiger auf den vom Aufrufer bereitgestellten Puffer, in dem die angeforderten Informationen zur Datei zurückgegeben werden sollen. Die Struktur des Puffers wird durch den FileInformationClass-Parameter bestimmt.

[in] Length

Länge des Puffers, auf den FileInformation verweist, in Byte.

[in] FileInformationClass

Ein FILE_INFORMATION_CLASS Wert, der den Typ der Dateiinformationen angibt, die im Puffer zurückgegeben werden sollen, auf den FileInformation verweist. FileInformationClass kann einer der folgenden Werte sein.

FILE_INFORMATION_CLASS-Wert Typ der zurückzugebenden Informationen
FileStatInformation (68) FILE_STAT_INFORMATION. Verfügbar ab Windows 10 Version 1709.
FileStatLxInformation (70) FILE_STAT_LX_INFORMATION. Verfügbar ab Windows 10 Update vom April 2018.
FileCaseSensitiveInformation (71) FILE_CASE_SENSITIVE_INFORMATION. Verfügbar ab Windows 10 Update vom April 2018.
FileStatBasicInformation (77) FILE_STAT_BASIC_INFORMATION. Verfügbar ab Windows 11, Build 26048.

Rückgabewert

NtQueryInformationByName gibt nach erfolgreichem Abschluss STATUS_SUCCESS zurück. Andernfalls wird ein Fehlercode zurückgegeben, z. B. einer der folgenden.

Fehlercode Bedeutung
STATUS_INVALID_PARAMETER Der Parameter FileInformationClass enthält einen ungültigen Wert.
STATUS_INFO_LENGTH_MISMATCH Die durch Länge angegebene Puffergröße ist nicht groß genug, um die angeforderten Informationen zu enthalten.

Hinweise

NtQueryInformationByName fragt die angeforderten Informationen zur Datei ab und gibt diese zurück. Dies geschieht, ohne die eigentliche Datei zu öffnen, was sie effizienter als NtQueryInformationFile macht, was eine Datei öffnen (und nachfolgende Datei schließen) erfordert.

Aufrufer von NtQueryInformationByName müssen unter IRQL = PASSIVE_LEVEL und mit aktivierten speziellen Kernel-APCs ausgeführt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10, Version 1703
Kopfzeile ntifs.h
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (siehe Abschnitt "Hinweise")

Weitere Informationen

FILE_CASE_SENSITIVE_INFORMATION

FILE_INFORMATION_CLASS

FILE_STAT_INFORMATION

FILE_STAT_LX_INFORMATION

IO_STATUS_BLOCK

NtQueryInformationFile

OBJECT_ATTRIBUTES