Share via


LB_DIR訊息

將名稱新增至清單方塊所顯示的清單。 訊息會新增符合指定字串和一組檔案屬性的目錄和檔案名。 LB_DIR 也可以將對應的磁碟機號新增至清單方塊。

參數

wParam

要新增至清單方塊之檔案或目錄的屬性。 此參數可以是下列一或多個值。

意義
DDL_ARCHIVE
包含封存檔案。
DDL_DIRECTORY
包含子目錄。 子目錄名稱會以方括弧括住, ([ ]) 。
DDL_DRIVES
所有對應的磁片磁碟機都會新增至清單。 磁片磁碟機會以 [-x-] 的形式列出,其中 x 是磁碟機號。
DDL_EXCLUSIVE
只包含具有指定屬性的檔案。 預設會列出讀取/寫入檔案,即使未指定DDL_READWRITE也一樣。
DDL_HIDDEN
包含隱藏的檔案。
DDL_READONLY
包含唯讀檔案。
DDL_READWRITE
包含沒有其他屬性的讀取/寫入檔案。 這是預設值。
DDL_SYSTEM
包含系統檔案。

lParam

指定絕對路徑、相對路徑或檔案名之 Null 終止字串的指標。 絕對路徑的開頭可以是磁碟機號 (,例如 d:) 或 UNC 名稱 (例如 \\ machinename\ sharename) 。

如果字串指定具有 wParam 參數所指定屬性的檔案名或目錄,則會將檔案名或目錄新增至清單。 如果檔案名或目錄名稱包含萬用字元 (?或 *) ,所有符合萬用字元運算式的檔案或目錄,並將 wParam 參數所指定的屬性新增至清單中。

傳回值

如果訊息成功,則傳回值是以零起始的姓氏索引新增至清單。

如果發生錯誤,則會LB_ERR傳回值。 如果空間不足而無法儲存新的字串,則會LB_ERRSPACE傳回值。

備註

LB_INITSTORAGE訊息可協助加速大量專案 (超過 100 個) 的清單方塊初始化。 它會保留指定的記憶體數量,以便後續 LB_DIR 訊息需要最短的時間。 您可以使用 wParamlParam 參數的估計值。 如果您超額,則會配置額外的記憶體;如果您忽略,一般配置會用於超過要求金額的專案。

如果 wParam 包含 DDL_DIRECTORY 旗標, 而 lParam 指定第一層目錄的所有子目錄,例如 C:\TEMP\*,清單方塊一律會包含根目錄的 「..」。 即使根目錄具有隱藏或系統屬性,而且未指定DDL_HIDDEN和DDL_SYSTEM旗標,也是如此。 NTFS 磁片區的根目錄具有隱藏和系統屬性。

清單會顯示長檔名,如果有的話。

對於 ANSI 應用程式,系統會使用 CP_ACP,將清單方塊中的文字轉換成 Unicode。 這可能會造成問題。 例如,日文 Windows 中非 Unicode 清單方塊中的輔色羅馬字元會以大寫顯示。 若要修正此問題,請將應用程式編譯為 Unicode 或使用擁有者繪製的清單方塊。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限桌面應用程式]
標頭
Winuser.h (包括 Windows.h)

另請參閱

DlgDirList