共用方式為


PathCchAddExtension 函式 (pathcch.h)

將擴展名新增至路徑字串。

此函式與 PathAddExtension 不同,因為它接受路徑具有 “\”、“\?” 和 “\?\UNC” 前置詞。

注意 此函式應用來取代 pathAddExtension,以避免緩衝區滿溢的可能性。

語法

WINPATHCCHAPI HRESULT PathCchAddExtension(
  [in, out] PWSTR  pszPath,
  [in]      size_t cchPath,
  [in]      PCWSTR pszExt
);

參數

[in, out] pszPath

路徑字串的指標。 當此函式成功傳回時,緩衝區會包含具有附加延伸模組的字元串。 此值不應 NULL

注意 如果原始字串已經有擴展名,則不會新增任何新的擴展名,且原始字串不會變更。

[in] cchPath

pszPath 所指向的緩衝區大小,以字元表示

[in] pszExt

擴展名字串的指標。 此字串可以搭配或不使用前一句號 (“.ext” 或 “ext” 來指定。

傳回值

此函式會傳回 HRESULT 程式代碼,包括下列專案。

傳回碼 描述
S_OK
函式成功。 請注意,這也會包含空白擴充功能的案例,例如沒有後面的字元的句號。 在此情況下,原始字串會傳回不變。
E_INVALIDARG
這個值可能是由數件事所造成,例如將 pszPath 參數設定為 NULLcchPath 設定為 0 或大於 PATHCCH_MAX_CCH的值,或包含非法字元的擴充字元串,或不是有效的擴展名。
S_FALSE
原始字串已經有擴充功能。
PATHCCH_E_FILENAME_TOO_LONG
緩衝區太小,無法保存傳回的字串。

要求

要求 價值
最低支援的用戶端 Windows 8 [傳統型應用程式 |UWP 應用程式]
支援的最低伺服器 Windows Server 2012 [傳統型應用程式 |UWP 應用程式]
目標平臺 窗戶
標頭 pathcch.h
連結庫 Pathcch.lib