Поделиться через


Функция StrNCatA (shlwapi.h)

Добавляет указанное количество символов от начала одной строки до конца другой.

Примечание Не используйте эту функцию или макрос StrCatN . Дополнительные функции см. в разделе Примечания.
 

Синтаксис

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 или более поздняя)