FsRtlIsFatDbcsLegal 函式 (ntifs.h)
FsRtlIsFatDbcsLegal 例程會決定指定的 ANSI 或雙位元組字元集 (DBCS) 字串是否為合法的 FAT 檔名。
語法
BOOLEAN FsRtlIsFatDbcsLegal(
[in] ANSI_STRING DbcsName,
[in] BOOLEAN WildCardsPermissible,
[in] BOOLEAN PathNamePermissible,
[in] BOOLEAN LeadingBackslashPermissible
);
參數
[in] DbcsName
要測試之字串的指標。
[in] WildCardsPermissible
如果要將通配符視為合法,則設定為 TRUE ,否則為 FALSE 。
[in] PathNamePermissible
如果 DbcsName 可以是包含反斜杠字元的完整路徑名稱,則設定為 TRUE ;如果 DbcsName 只能是檔名,則為 FALSE 。
[in] LeadingBackslashPermissible
如果檔案或路徑名稱中允許單一前置反斜杠,則設定為 TRUE ,否則為 FALSE 。
傳回值
如果字串是合法的 FAT 檔名, FsRtlIsFatDbcsLegal 例程會傳回 TRUE ,否則為 FALSE 。
備註
FsRtlIsFatDbcsLegal 例程會判斷指定的檔名是否符合法務檔名的 FAT 特定規則。 這個例程會檢查檔名,或者,如果 PathNamePer允許 指定為 TRUE,則整個路徑名稱是否為合法的 FAT 名稱。
FAT 檔案名必須遵守下列規則:
- 在 FAT 檔名中,下列字元不合法:
0x00-0x1F
、 ("
直引號) 、/
(斜線) 、 (冒號) 、 (垂直線或管道+
) 、:
|
(加,
) 、 (逗號) 、 (分號) 、=
(等號;
) ,[ ]
(括弧) - FAT 檔名的格式為
N.E
或只是N
,其中N
是一到八個字節的字元串,而E
是一到三個字節的字串,符合規則一。 此外,也E
不得N
包含.
(句號) 或以空格符結尾。 例如,.foo
檔案、foo.
和foo .b
是不合法的,而foo. b
和bar
是合法的。 - FAT 檔名不區分大小寫。 小寫名稱會自動轉換成大寫。
如需其他字串處理例程的資訊,請參閱 Run-Time Library (RTL) 例程。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 |
目標平台 | Universal |
標頭 | ntifs.h (包括 FltKernel.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應