Partager via


Fonction PathAppendW (shlwapi.h)

Ajoute un chemin à la fin d’un autre.

Note Une mauvaise utilisation de cette fonction peut entraîner un dépassement de mémoire tampon. Nous vous recommandons d’utiliser la fonction PathCchAppend ou PathCchAppendEx plus sûre à sa place.
 

Syntaxe

BOOL PathAppendW(
  [in, out] LPWSTR  pszPath,
  [in]      LPCWSTR pszMore
);

Paramètres

[in, out] pszPath

Type : LPTSTR

Pointeur vers une chaîne terminée par null à laquelle le chemin spécifié dans pszMore est ajouté. Vous devez définir la taille de cette mémoire tampon sur MAX_PATH pour vous assurer qu’elle est suffisamment grande pour contenir la chaîne retournée.

[in] pszMore

Type : LPCTSTR

Pointeur vers une chaîne terminée par un null de longueur maximale MAX_PATH qui contient le chemin d’accès à ajouter.

Valeur retournée

Type : BOOL

Retourne LA valeur TRUE si elle réussit ou FALSE dans le cas contraire.

Remarques

Cette fonction insère automatiquement une barre oblique inverse entre les deux chaînes, si l’une d’elles n’est pas déjà présente.

Le chemin d’accès fourni dans pszPath ne peut pas commencer par . \ » ou « .\ » pour produire une chaîne de chemin d’accès relative. Le cas échéant, ces périodes sont supprimées de la chaîne de sortie. Par exemple, l’ajout de « path3 » à . \path1\path2 » génère une sortie de « \path1\path2\path3 » au lieu de « . \path1\path2\path3 ».

Exemples


#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

Notes

L’en-tête shlwapi.h définit PathAppend comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel, Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlwapi.h
Bibliothèque Shlwapi.lib
DLL Shlwapi.dll (version 4.71 ou ultérieure)