Функция StrNCatA (shlwapi.h)
Добавляет указанное количество символов от начала одной строки до конца другой.
Синтаксис
PSTR StrNCatA(
[in, out] PSTR psz1,
PCSTR psz2,
int cchMax
);
Параметры
[in, out] psz1
Тип: PTSTR
Указатель на строку, завершающуюся значением NULL, к которой функция добавляет символы из psz2. Он должен быть достаточно большим для хранения объединенных строк и завершающего символа NULL.
psz2
Тип: PCTSTR
Указатель на строку, завершаемую значением NULL, которая должна быть добавлена.
cchMax
Тип: int
Число символов, добавляемых к psz1 с начала psz2.
Возвращаемое значение
Тип: PTSTR
Возвращает указатель на psz1, который содержит объединенную строку.
Комментарии
Предупреждение системы безопасности: Неправильное использование этой функции может поставить под угрозу безопасность приложения. Первый аргумент, psz1, должен быть достаточно большим, чтобы вместить psz2 и закрывающий "\0", в противном случае может произойти переполнение буфера. Переполнение буфера может привести к атаке типа "отказ в обслуживании" в приложении в случае нарушения доступа. В худшем случае переполнение буфера может позволить злоумышленнику внедрить исполняемый код в процесс, особенно если psz1 является буфером на основе стека. Имейте в виду, что последний аргумент cchMax — это количество символов для копирования в psz1, а не обязательно размер psz1 в байтах. Рассмотрите возможность использования одного из следующих вариантов. StringCbCat, StringCbCatEx, StringCbCatN, StringCbCatNEx, StringCchCat,StringCchCatEx, StringCchCatN или StringCchCatNEx. Прежде чем продолжить, ознакомьтесь с разделом Вопросы безопасности: Оболочка Microsoft Windows .
Примечание
Заголовок shlwapi.h определяет StrNCat в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows 2000 Professional, Windows XP [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | shlwapi.h |
Библиотека | Shlwapi.lib |
DLL | Shlwapi.dll (версия 4.71 или более поздняя) |