PathAppendA 函式 (shlwapi.h)
將一個路徑附加至另一個路徑的結尾。
注意 誤用此函式可能會導致緩衝區滿溢。 我們建議使用更安全的pathCchAppend 或 PathCchAppendEx 函式。
語法
BOOL PathAppendA(
[in, out] LPSTR pszPath,
[in] LPCSTR pszMore
);
參數
[in, out] pszPath
類型:LPTSTR
附加 pszMore 中所指定路徑的 null 終止字串指標。 您必須將此緩衝區的大小設定為 MAX_PATH,以確保大小足以保存傳回的字串。
[in] pszMore
類型:LPCTSTR
包含要附加之路徑之最大長度的 null 終止字串指標MAX_PATH。
傳回值
類型:BOOL
如果成功,則傳回 true true,否則會 傳回 false。
言論
如果兩個字串尚未存在,此函式會自動插入反斜杠。
pszPath 中提供的路徑不能以 “. 開頭。要產生相對路徑字串的 \“ 或 ”.\“。 如果存在,則會從輸出字串中去除這些句號。 例如,將 “path3” 附加至 “.。\path1\path2“ 會產生 ”\path1\path2\path3“ 而不是 ”.. 的輸出。\path1\path2\path3”。
例子
#include <windows.h>
#include <iostream>
#include "Shlwapi.h"
using namespace std;
int main( void )
{
// String for path name.
char buffer_1[MAX_PATH] = "name_1\\name_2";
char *lpStr1;
lpStr1 = buffer_1;
// String of what is being added.
char buffer_2[ ] = "name_3";
char *lpStr2;
lpStr2 = buffer_2;
cout << "The original path string is " << lpStr1 << endl;
cout << "The part to append to end is " << lpStr2 << endl;
bool ret = PathAppend(lpStr1,lpStr2);
cout << "The appended path string is " << lpStr1 << endl;
}
OUTPUT:
---------
The original path string is name_1\name_2
The part to append to end is name_3
The appended path string is name_1\name_2\name_3
注意
shlwapi.h 標頭會將PathAppend定義為別名,根據UNICODE預處理器常數的定義,自動選取此函式的ANSI或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | shlwapi.h |
連結庫 | Shlwapi.lib |
DLL | Shlwapi.dll (4.71 版或更新版本) |