PathAppendW 函式 (shlwapi.h)
將一個路徑附加至另一個路徑的結尾。
注意 誤用此函式可能會導致緩衝區溢出。 建議您在其位置使用更安全的 PathCchAppend 或 PathCchAppendEx 函式。
語法
BOOL PathAppendW(
[in, out] LPWSTR pszPath,
[in] LPCWSTR pszMore
);
參數
[in, out] pszPath
類型: LPTSTR
附加 pszMore 中所指定路徑之 Null 終止字串的指標。 您必須將此緩衝區的大小設定為MAX_PATH,以確保它夠大,才能保存傳回的字串。
[in] pszMore
類型: LPCTSTR
包含要附加之路徑之 null 終止字串的指標,其長度上限為 MAX_PATH。
傳回值
類型: BOOL
如果成功,則傳回 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 專業版、Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | shlwapi.h |
程式庫 | Shlwapi.lib |
Dll | Shlwapi.dll (4.71 版或更新版本) |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應