共用方式為


PathAppendA 函式 (shlwapi.h)

將一個路徑附加至另一個路徑的結尾。

注意 誤用此函式可能會導致緩衝區溢出。 我們建議在其位置使用更安全 的PathCchAppendPathCchAppendEx函 式。
 

語法

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 ,否則傳回 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 [僅限桌面應用程式]
目標平台 Windows
標頭 shlwapi.h
程式庫 Shlwapi.lib
Dll Shlwapi.dll (4.71 版或更新版本)