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") |