Share via


PathCombineA-Funktion (shlwapi.h)

Verkettet zwei Zeichenfolgen, die ordnungsgemäß formatierte Pfade darstellen, zu einem Pfad; verkettet auch alle relativen Pfadelemente.

Hinweis Ein Missbrauch dieser Funktion kann zu einem Pufferüberlauf führen. Wir empfehlen die Verwendung der sichereren PathCchCombine - oder PathCchCombineEx-Funktion an ihrer Stelle.
 

Syntax

LPSTR PathCombineA(
  [out]          LPSTR  pszDest,
  [in, optional] LPCSTR pszDir,
  [in]           LPCSTR pszFile
);

Parameter

[out] pszDest

Typ: LPTSTR

Ein Zeiger auf einen Puffer, der die kombinierte Pfadzeichenfolge empfängt, wenn diese Funktion erfolgreich zurückgibt. Sie müssen die Größe dieses Puffers auf MAX_PATH festlegen, um sicherzustellen, dass er groß genug ist, um die zurückgegebene Zeichenfolge zu enthalten.

[in, optional] pszDir

Typ: LPCTSTR

Ein Zeiger auf eine null-endende Zeichenfolge mit maximaler Länge MAX_PATH, die den ersten Pfad enthält. Dieser Wert kann NULL sein.

[in] pszFile

Typ: LPCTSTR

Ein Zeiger auf eine null-endende Zeichenfolge mit maximaler Länge MAX_PATH, die den zweiten Pfad enthält. Dieser Wert kann NULL sein.

Rückgabewert

Typ: LPTSTR

Ein Zeiger auf einen Puffer, der die verkettete Pfadzeichenfolge empfängt, wenn diese Funktion erfolgreich zurückgibt. Dies ist die gleiche Zeichenfolge, auf die von pszPathOut verwiesen wird. Wenn diese Funktion nicht erfolgreich zurückgibt, ist dieser Wert NULL.

Hinweise

Der Verzeichnispfad sollte in der Form A:,B:, ..., Z:sein. Der Dateipfad sollte in einer korrekten Form vorliegen, die den Dateinamenteil des Pfads darstellt. Wenn der Verzeichnispfad mit einem umgekehrten Schrägstrich endet, wird der umgekehrte Schrägstrich beibehalten. Beachten Sie, dass lpszDir und lpszFile beide optionale Parameter sind, aber nicht beide NULL sein können.

Beispiele

#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

Hinweis

Der shlwapi.h-Header definiert PathCombine als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shlwapi.h
Bibliothek Shlwapi.lib
DLL Shlwapi.dll (Version 4.71 oder höher)