PathCombineA 関数 (shlwapi.h)
正しく形成されたパスを表す 2 つの文字列を 1 つのパスに連結します。では、相対パス要素も連結されます。
構文
LPSTR PathCombineA(
[out] LPSTR pszDest,
[in, optional] LPCSTR pszDir,
[in] LPCSTR pszFile
);
パラメーター
[out] pszDest
型: LPTSTR
この関数が正常に返されると、結合されたパス文字列を受け取るバッファーへのポインター。 返された文字列を保持するのに十分な大きさになるように、このバッファーのサイズを MAX_PATH に設定する必要があります。
[in, optional] pszDir
型: LPCTSTR
最初のパスを含む最大長MAX_PATHの null で終わる文字列へのポインター。 この値は NULL
[in] pszFile
型: LPCTSTR
2 番目のパスを含む最大長MAX_PATHの null で終わる文字列へのポインター。 この値は NULL
戻り値
型: LPTSTR
この関数が正常に返されると、連結されたパス文字列を受け取るバッファーへのポインター。 これは、pszPathOut
備考
ディレクトリ パスは、A:、B:、...、Z: の形式にする必要があります。 ファイル パスは、パスのファイル名部分を表す正しい形式にする必要があります。 ディレクトリ パスが円記号で終わる場合、円記号は維持されます。 lpszDir
例
#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"
void 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 ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして PathCombine を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional、Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | shlwapi.h |
ライブラリ | Shlwapi.lib |
DLL | Shlwapi.dll (バージョン 4.71 以降) |