PathAddExtensionW 函式 (shlwapi.h)
將副檔名新增至路徑字串。
注意 誤用此函式可能會導致緩衝區溢位。 我們建議在其位置使用更安全 的 PathCchAddExtension 函 式。
語法
BOOL PathAddExtensionW(
[in, out] LPWSTR pszPath,
[in, optional] LPCWSTR pszExt
);
參數
[in, out] pszPath
類型: LPTSTR
緩衝區的指標,其中包含要附加副檔名為 Null 的字串。 您必須將此緩衝區的大小設定為MAX_PATH,以確保它夠大,足以保存傳回的字串。
[in, optional] pszExt
類型: LPCTSTR
包含副檔名之 Null 終止字串的指標。 此值可以是 Null。
傳回值
類型: BOOL
如果已新增擴充功能,則傳回 TRUE ,否則傳回 FALSE 。
備註
如果已經有副檔名存在,則不會新增任何副檔名。 如果 pszPath 指向 Null 字串,則結果只會是副檔名。 如果 pszExtension 指向 Null 字串,則會新增 「.exe」 延伸模組。
範例
#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"
void main( void )
{
// String for path name without file name extension.
char buffer_1[MAX_PATH] = "file";
char *lpStr1;
lpStr1 = buffer_1;
// String for path name with file name extension.
char buffer_2[ ] = "file.doc";
char *lpStr2;
lpStr2 = buffer_2;
// String for extension name.
char F_Ext[MAX_PATH] = ".txt";
char *lpStr3;
lpStr3 = F_Ext;
// Null string as path.
char N_String[MAX_PATH] = "\0";
char *lpStr4;
lpStr4 = N_String;
// Path 1 without the file name extension.
cout << "The original path string 1 is " << lpStr1 << endl;
int ret_1 = PathAddExtension(lpStr1,lpStr3);
cout << "The modified path string 1 is " << lpStr1 << endl;
// Path 2 with the file name extension already there.
cout << "The original path string 2 is " << lpStr2 << endl;
int ret_2 = PathAddExtension(lpStr2,lpStr3);
cout << "The modified path string 2 is " << lpStr2<< endl;
// Path 3 null string as a path.
int ret_3 = PathAddExtension(lpStr4,lpStr3);
cout << "The return value is " << ret_3<< endl;
cout << "The modified path on a null string is " << lpStr4<< endl;
}
OUTPUT:
-----------------------
The original path string 1 is file
The modified path string 1 is file.txt
The original path string 2 is file.doc
The modified path string 2 is file.doc
The return value is 1
The modified path on a null string is .txt
The return value is 1
注意
shlwapi.h 標頭會將 PathAddExtension 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限桌面應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | shlwapi.h |
程式庫 | Shlwapi.lib |
Dll | Shlwapi.dll (4.71 版或更新版本) |