共用方式為


FsRtlIsHpfsDbcsLegal 函式 (ntifs.h)

FsRtlIsHpfsDbcsLegal 例程會判斷指定的 ANSI 或雙位元組字元集 (DBCS) 字串是否為合法的 HPFS 檔名。

語法

BOOLEAN FsRtlIsHpfsDbcsLegal(
  [in] ANSI_STRING DbcsName,
  [in] BOOLEAN     WildCardsPermissible,
  [in] BOOLEAN     PathNamePermissible,
  [in] BOOLEAN     LeadingBackslashPermissible
);

參數

[in] DbcsName

要測試之字串的指標。

[in] WildCardsPermissible

如果通配符被視為合法,則設定為 TRUE,否則為 FALSE。

[in] PathNamePermissible

如果 DbcsName 可以是包含反斜杠字元的完整路徑名稱,則設定為 TRUE;如果它只能是檔名,則為 FALSE。

[in] LeadingBackslashPermissible

如果檔案或pathname中允許單一前置反斜杠,則設定為TRUE,否則為 FALSE。

傳回值

如果字串是合法的 HPFS 檔名,則 FsRtlIsHpfsDbcsLegal 例程會傳回 TRUE,否則為 FALSE。

言論

FsRtlIsHpfsDbcsLegal 例程會判斷指定的檔名是否符合合法檔名的 HPFS 特定規則。 此例程會檢查檔名,或者,如果 PathNamePermissible 指定為 TRUE,則整個路徑名稱是否為合法的 HPFS 名稱。

HPFS 檔名必須遵守下列規則:

  • 下列字元在 HPFS 檔名中是非法的:0x0000 - 0x001F、“(引號)、/(斜線)、:(冒號)、<(小於符號)、>(大於符號),? (問號), |(垂直橫條或管道),* (星號)

  • HPFS 檔名不能以句號或空格結尾。 例如,“foo” 和 “foo.” 檔案是非法的,而 “.foo”、“foo” 和 “foo.bar.foo” 是合法的。

  • HPFS 檔名不能超過 255 個字節。

  • HPFS 檔名會保留大小寫,但不區分大小寫。 小寫檔名不會自動轉換成大寫。 不過,檔名比較中會忽略大小寫。

要求

要求 價值
最低支援的用戶端 Windows 2000
目標平臺 普遍
標頭 ntifs.h (include FltKernel.h, Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

ANSI_STRING