ZwQueryInformationByName 函式 (wdm.h)
ZwQueryInformationByName 會傳回檔名所指定檔案的要求資訊。
語法
NTSYSAPI NTSTATUS ZwQueryInformationByName(
[in] POBJECT_ATTRIBUTES ObjectAttributes,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[out] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass
);
參數
[in] ObjectAttributes
包含檔案屬性 之OBJECT_ATTRIBUTES 結構的指標,包括檔名。
[out] IoStatusBlock
指標包含呼叫端 I/O 狀態 的IO_STATUS_BLOCK 結構。
[out] FileInformation
呼叫端提供的緩衝區指標,用來傳回檔案的要求資訊。 緩衝區的結構是由 FileInformationClass 參數所決定。
[in] Length
FileInformation 指向的緩衝區長度,以位元組為單位。
[in] FileInformationClass
FILE_INFORMATION_CLASS值,識別 FileInformation 所指向之緩衝區中傳回的文件類型。 FileInformationClass 可以是下列其中一個值。
FILE_INFORMATION_CLASS值 | 要傳回的信息類型 |
---|---|
FileStatInformation (68) | FILE_STAT_INFORMATION。 從 Windows 10 1709 版開始提供。 |
FileStatLxInformation (70) | FILE_STAT_LX_INFORMATION。 從 2018 年 4 月更新開始提供 Windows 10。 |
FileCaseSensitiveInformation (71) | FILE_CASE_SENSITIVE_INFORMATION。 從 2018 年 4 月更新開始提供 Windows 10。 |
傳回值
ZwQueryInformationByName 會在成功完成時傳回STATUS_SUCCESS;否則會傳回錯誤碼,例如下列其中一項。
錯誤碼 | 意義 |
---|---|
STATUS_INVALID_PARAMETER | FileInformationClass 參數包含無效的值。 |
STATUS_INFO_LENGTH_MISMATCH | Length 指定的緩衝區大小不足以包含要求的資訊。 |
備註
ZwQueryInformationByName 查詢,並傳回檔案的要求資訊。 它不需要開啟實際檔案,因此比 ZwQueryInformationFile 更有效率,這需要開啟檔案 (和後續檔案關閉) 。
ZwQueryInformationByName 的呼叫端必須在 IRQL = PASSIVE_LEVEL且啟用特殊核心 APC 時執行。
規格需求
需求 | 值 |
---|---|
標頭 | wdm.h |
IRQL | PASSIVE_LEVEL (请参阅一节) |