GetFileTitleA 函式 (commdlg.h)
擷取指定檔案的名稱。
語法
short GetFileTitleA(
[in] LPCSTR unnamedParam1,
[out] LPSTR Buf,
[in] WORD cchSize
);
參數
[in] unnamedParam1
類型: LPCTSTR
檔案的名稱和位置。
[out] Buf
類型: LPTSTR
接收檔名的緩衝區。
[in] cchSize
類型: WORD
lpszTitle 參數所指向緩衝區的長度,以字元為單位。
傳回值
類型: short
如果此函式成功,則傳回值為零。
如果檔名無效,則傳回值未知。 如果發生錯誤,則傳回值為負數。
如果 lpszTitle 參數所指向的緩衝區太小,則傳回值為正整數,以字元為單位指定所需的緩衝區大小。 必要的緩衝區大小包含終止的 Null 字元。
備註
GetFileTitle 應該只以合法檔名呼叫;使用不合法的檔名有未定義的結果。
若要取得檔名所需的緩衝區大小,請呼叫 lpszTitle 設為 NULL 的函式, 並將 cchSize 設定為零。 函式會傳回所需的大小。
GetFileTitle 會傳回系統用來向用戶顯示檔名的字串。 只有當這是使用者用來顯示檔名的喜好設定時,顯示名稱才會包含擴展名。 這表示傳回的字串在呼叫文件系統函式時,可能無法正確識別檔案。
如果 lpszTitle 緩衝區太小, GetFileTitle 會傳回保留顯示名稱所需的大小。 不過, lpszFile 緩衝區中原本指定的字元大小與必要大小之間沒有保證的關聯性。 例如,請勿將 lpszTitle 設定為 NULL 且 cchSize 設為零呼叫 GetFileTitle,然後嘗試使用傳回值做為 lpszFile 字串中的索引。 您通常可以使用 c 運行時間連結庫函式,例如 strrchr、 wcsrchr 和 _mbsrchr,來達成類似結果 (和效能 ) 。
注意
commdlg.h 標頭會將 GetFileTitle 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | commdlg.h (包含 Windows.h) |
程式庫 | Comdlg32.lib |
Dll | Comdlg32.dll |
API 集合 | ext-ms-win-shell-comdlg32-l1-1-1 (Windows 10 10.0.14393 版) |
另請參閱
概念
參考