DlgDirSelectExA 函式 (winuser.h)
從單一選取清單框中擷取目前的選取範圍。 它假設清單框已由 DlgDirList 函式填滿,而且選取範圍是驅動器號、檔名或目錄名稱。
語法
BOOL DlgDirSelectExA(
[in] HWND hwndDlg,
[out] LPSTR lpString,
[in] int chCount,
[in] int idListBox
);
參數
[in] hwndDlg
類型: HWND
包含清單框之對話框的句柄。
[out] lpString
類型: LPTSTR
接收所選取路徑之緩衝區的指標。
[in] chCount
類型: int
lpString 所指向之緩衝區的長度,以 TCHAR 為單位。
[in] idListBox
類型: int
對話框中清單框的識別碼。
傳回值
類型: BOOL
如果目前的選取範圍是目錄名稱,則傳回值為非零。
如果目前的選取範圍不是目錄名稱,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
DlgDirSelectEx 函式會將選取範圍複製到 lpString 參數指向的緩衝區。 如果目前的選取範圍是目錄名稱或驅動器號, DlgDirSelectEx 會移除 (和連字元的括住方括弧,以便) 驅動器號,以便將名稱或字母插入新路徑。 如果沒有選取範圍, lpString 就不會變更。
如果字串長度或長度超過緩衝區,緩衝區將會包含具有終止 Null 字元的截斷字串。
DlgDirSelectEx 會將 LB_GETCURSEL 和 LB_GETTEXT 訊息傳送至清單框。 函式不允許從清單框傳回多個檔名。 清單框不得為多重選取清單框。 如果是,此函式不會傳回零值,而且 lpString 保持不變。
Windows 95 或更新版本:適用於 Unicode 的 Microsoft Layer 支援 DlgDirSelectExW 。 若要使用此功能,您必須將特定檔案新增至您的應用程式,如 Windows Me/98/95 Systems 上的 Microsoft Layer for Unicode 中所述。
範例
如需範例,請參閱 在單一選取清單框中建立目錄清單。
注意
winuser.h 標頭會將 DlgDirSelectEx 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
另請參閱
參考