다음을 통해 공유


PathCombineW 함수(shlwapi.h)

올바르게 구성된 경로를 나타내는 두 문자열을 하나의 경로로 연결합니다. 또한 상대 경로 요소를 연결합니다.

참고 이 함수를 잘못 사용하면 버퍼 오버런이 발생할 수 있습니다. 보다 안전한 PathCchCombine 또는 PathCchCombineEx 함수를 사용하는 것이 좋습니다.
 

통사론

LPWSTR PathCombineW(
  [out]          LPWSTR  pszDest,
  [in, optional] LPCWSTR pszDir,
  [in]           LPCWSTR pszFile
);

매개 변수

[out] pszDest

형식: LPTSTR

이 함수가 성공적으로 반환될 때 결합된 경로 문자열을 수신하는 버퍼에 대한 포인터입니다. 반환된 문자열을 저장할 수 있을 만큼 큰지 확인하려면 이 버퍼의 크기를 MAX_PATH 설정해야 합니다.

[in, optional] pszDir

형식: LPCTSTR

첫 번째 경로를 포함하는 최대 길이 MAX_PATH null로 끝나는 문자열에 대한 포인터입니다. 이 값은 NULL수 있습니다.

[in] pszFile

형식: LPCTSTR

두 번째 경로를 포함하는 최대 길이 MAX_PATH null로 끝나는 문자열에 대한 포인터입니다. 이 값은 NULL수 있습니다.

반환 값

형식: LPTSTR

이 함수가 성공적으로 반환될 때 연결된 경로 문자열을 수신하는 버퍼에 대한 포인터입니다. 이 문자열은 pszPathOut가리키는 것과 동일한 문자열입니다. 이 함수가 성공적으로 반환되지 않으면 이 값은 NULL.

발언

디렉터리 경로는 A:,B:, ..., Z:의 형식이어야 합니다. 파일 경로는 경로의 파일 이름 부분을 나타내는 올바른 형식이어야 합니다. 디렉터리 경로가 백슬래시로 끝나는 경우 백슬래시는 유지 관리됩니다. lpszDirlpszFile 모두 선택적 매개 변수이지만 둘 다 NULL수 없습니다.

예제

#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"

int main( void )
{
// Buffer to hold combined path.
char buffer_1[MAX_PATH] = "";
char *lpStr1;
lpStr1 = buffer_1;

// String for balance of path name.
char buffer_2[ ] = "One\\Two\\Three";
char *lpStr2;
lpStr2 = buffer_2;

// String for directory name.
char buffer_3[ ] = "C:";
char *lpStr3;
lpStr3 = buffer_3;

cout << "The file path to be combined is  " 
     << lpStr2 << endl;
cout << "The directory name path is       " 
     << lpStr3 << endl;
cout << "The combined path is             " 
     << PathCombine(lpStr1,lpStr3,lpStr2) << endl;
}

------------
INPUT:
------------
Path for directory part: "C:"
Path for file part: "One\Two\Three"
------------
OUTPUT:
------------
The file path to be combined is  One\Two\Three
The directory name path is       C:
The combined path is             C:\One\Two\Three

메모

shlwapi.h 헤더는 PATHCombine을 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한 규칙을 참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shlwapi.h
라이브러리 Shlwapi.lib
DLL Shlwapi.dll(버전 4.71 이상)