PathCombineA-Funktion (shlwapi.h)
Verkettet zwei Zeichenfolgen, die ordnungsgemäß gebildete Pfade in einem Pfad darstellen; verkettet auch alle relativen Pfadelemente.
Syntax
LPSTR PathCombineA(
[out] LPSTR pszDest,
[in, optional] LPCSTR pszDir,
[in] LPCSTR pszFile
);
Parameter
[out] pszDest
Typ: LPTSTR-
Ein Zeiger auf einen Puffer, der, wenn diese Funktion erfolgreich zurückgegeben wird, die kombinierte Pfadzeichenfolge empfängt. Sie müssen die Größe dieses Puffers auf MAX_PATH festlegen, um sicherzustellen, dass die zurückgegebene Zeichenfolge groß genug ist.
[in, optional] pszDir
Typ: LPCTSTR-
Ein Zeiger auf eine mit Null beendete Zeichenfolge der maximalen Länge MAX_PATH, die den ersten Pfad enthält. Dieser Wert kann NULL-sein.
[in] pszFile
Typ: LPCTSTR-
Ein Zeiger auf eine null-beendete 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, wenn diese Funktion erfolgreich zurückgegeben wird, die verkettete Pfadzeichenfolge empfängt. Dies ist die gleiche Zeichenfolge, auf die pszPathOutverweist. Wenn diese Funktion nicht erfolgreich zurückgegeben wird, ist dieser Wert NULL-.
Bemerkungen
Der Verzeichnispfad sollte in Form von A:,B:, ..., Z:. Der Dateipfad sollte sich in einer richtigen Form befinden, 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, sie können nicht beide NULL-sein.
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
Anmerkung
Der Header "shlwapi.h" 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 |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional, Windows XP [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | shlwapi.h |
Library | Shlwapi.lib |
DLL- | Shlwapi.dll (Version 4.71 oder höher) |