Функция PathAppendA (shlwapi.h)
Добавляет один путь к концу другого.
Синтаксис
BOOL PathAppendA(
[in, out] LPSTR pszPath,
[in] LPCSTR pszMore
);
Параметры
[in, out] pszPath
Тип: LPTSTR
Указатель на строку, завершающуюся null, к которой добавляется путь, указанный в pszMore . Необходимо задать размер этого буфера MAX_PATH, чтобы убедиться, что он достаточно велик для хранения возвращаемой строки.
[in] pszMore
Тип: LPCTSTR
Указатель на строку максимальной длины, заканчивающуюся значением NULL, MAX_PATH, содержащую добавляемый путь.
Возвращаемое значение
Тип: BOOL
Возвращает значение TRUE в случае успешного выполнения или FALSE в противном случае.
Комментарии
Эта функция автоматически вставляет обратную косую черту между двумя строками, если одна из них еще отсутствует.
Путь, указанный в pszPath, не может начинаться с ". \" или ".\" для создания строки относительного пути. Если они присутствуют, эти точки удаляются из выходной строки. Например, при добавлении "path3" в ".. \path1\path2" выводит выходные данные "\path1\path2\path3", а не ".. \path1\path2\path3".
Примеры
#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
Примечание
Заголовок shlwapi.h определяет PathAppend в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional, Windows XP [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | shlwapi.h |
Библиотека | Shlwapi.lib |
DLL | Shlwapi.dll (версия 4.71 или более поздняя) |