Freigeben über


NtQueryInformationByName-Funktion (ntifs.h)

NtQueryInformationByName die angeforderten Informationen zu einer datei zurück, die durch den Dateinamen angegeben ist.

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

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

[out] IoStatusBlock

Zeiger einer IO_STATUS_BLOCK Struktur, die den E/A-Status des Aufrufers enthält.

[out] FileInformation

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

[in] Length

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

[in] FileInformationClass

Ein FILE_INFORMATION_CLASS Wert, der den Typ der Dateiinformationen identifiziert, 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. Ab Windows 10 April 2018 Update verfügbar.
FileCaseSensitiveInformation (71) FILE_CASE_SENSITIVE_INFORMATION. Ab Windows 10 April 2018 Update verfügbar.
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 Length angegebene Puffergröße ist nicht groß genug, um die angeforderten Informationen zu enthalten.

Bemerkungen

NtQueryInformationByName Abfragen und gibt die angeforderten Informationen zur Datei zurück. Dies geschieht, ohne die eigentliche Datei zu öffnen, wodurch sie effizienter ist als NtQueryInformationFile, was eine Datei öffnen (und nachfolgende Datei schließen muss).

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

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 10, Version 1703
Header- ntifs.h
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL (siehe Abschnitt "Hinweise")

Siehe auch

FILE_CASE_SENSITIVE_INFORMATION

FILE_INFORMATION_CLASS

FILE_STAT_INFORMATION

FILE_STAT_LX_INFORMATION

IO_STATUS_BLOCK

NtQueryInformationFile-

OBJECT_ATTRIBUTES