Заголовок ntstrsafe.h
При использовании безопасных строковых функций вместо функций обработки строк, предоставляемых библиотеками времени выполнения языка C, вы защищаете код от ошибок переполнения буфера, которые могут сделать код ненадежным. Этот заголовок объявляет функции, которые копируют, объединяют и форматируют строки таким образом, чтобы предотвратить ошибки переполнения буфера.
Для управления строками Юникода и ANSI каждая функция доступна в двух версиях:
- Версия с суффиксами W, поддерживающая двухбайтовые символы Юникода.
- Версия с суффиксами A, поддерживающая однобайтовые символы ANSI.
Строки Юникода указываются в UNICODE_STRING структурах в драйверах режима ядра.
Дополнительные сведения см. в разделе:
ntstrsafe.h содержит следующие программные интерфейсы:
Функции
RtlStringCbCatA Функции RtlStringCbCatW и RtlStringCbCatA объединяют две строки с подсчетом байтов. |
RtlStringCbCatExA Функции RtlStringCbCatExW и RtlStringCbCatExA объединяют две строки с подсчетом байтов. |
RtlStringCbCatExW Узнайте, как функции RtlStringCbCatExW и RtlStringCbCatExA объединяют две строки с подсчетом байтов. |
RtlStringCbCatNA Функции RtlStringCbCatNW и RtlStringCbCatNA объединяют две строки с подсчетом байтов, ограничивая размер добавленной строки. |
RtlStringCbCatNExA Функции RtlStringCbCatNExW и RtlStringCbCatNExA объединяют две строки с подсчетом байтов, ограничивая размер добавленной строки. |
RtlStringCbCatNExW Узнайте, как функции RtlStringCbCatNExW и RtlStringCbCatNExA объединяют две строки с подсчетом байтов, ограничивая размер добавленной строки. |
RtlStringCbCatNW Узнайте, как функции RtlStringCbCatNW и RtlStringCbCatNA объединяют две строки с подсчетом байтов, ограничивая размер добавленной строки. |
RtlStringCbCatW Узнайте, как функции RtlStringCbCatW и RtlStringCbCatA объединяют две строки с подсчетом байтов. |
RtlStringCbCopyA Функции RtlStringCbCopyW и RtlStringCbCopyA копируют строку с подсчетом байтов в буфер. |
RtlStringCbCopyExA Функции RtlStringCbCopyExW и RtlStringCbCopyExA копируют строку с подсчетом байтов в буфер. |
RtlStringCbCopyExW Узнайте, как функции RtlStringCbCopyExW и RtlStringCbCopyExA копируют строку с подсчетом байтов в буфер. |
RtlStringCbCopyNA Функции RtlStringCbCopyNW и RtlStringCbCopyNA копируют строку с подсчетом байтов в буфер, ограничивая размер скопированной строки. |
RtlStringCbCopyNExA Функции RtlStringCbCopyNExW и RtlStringCbCopyNExA копируют строку с подсчетом байтов в буфер, ограничивая размер скопированной строки. |
RtlStringCbCopyNExW Узнайте, как функции RtlStringCbCopyNExW и RtlStringCbCopyNExA копируют строку с подсчетом байтов в буфер, ограничивая размер скопированной строки. |
RtlStringCbCopyNW Узнайте, как функции RtlStringCbCopyNW и RtlStringCbCopyNA копируют строку с подсчетом байтов в буфер, ограничивая размер скопированной строки. |
RtlStringCbCopyUnicodeString Функция RtlStringCbCopyUnicodeString копирует содержимое структуры UNICODE_STRING в указанное назначение. |
RtlStringCbCopyUnicodeStringEx Функция RtlStringCbCopyUnicodeStringEx копирует содержимое структуры UNICODE_STRING в указанное назначение. |
RtlStringCbCopyW Узнайте, как функции RtlStringCbCopyW и RtlStringCbCopyA копируют строку с подсчетом байтов в буфер. |
RtlStringCbLengthA Функции RtlStringCbLengthW и RtlStringCbLengthA определяют длину предоставленной строки в байтах. |
RtlStringCbLengthW Узнайте, как функции RtlStringCbLengthW и RtlStringCbLengthA определяют длину предоставленной строки в байтах. |
RtlStringCbPrintfA Функции RtlStringCbPrintfW и RtlStringCbPrintfA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbPrintfExA Функции RtlStringCbPrintfExW и RtlStringCbPrintfExA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbPrintfExW Узнайте, как функции RtlStringCbPrintfExW и RtlStringCbPrintfExA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbPrintfW Узнайте, как функции RtlStringCbPrintfW и RtlStringCbPrintfA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbVPrintfA Функции RtlStringCbVPrintfW и RtlStringCbVPrintfA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbVPrintfExA Функции RtlStringCbVPrintfExW и RtlStringCbVPrintfExA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbVPrintfExW Узнайте, как функции RtlStringCbVPrintfExW и RtlStringCbVPrintfExA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCbVPrintfW Узнайте, как функции RtlStringCbVPrintfW и RtlStringCbVPrintfA создают текстовую строку с подсчетом байтов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchCatA Функции RtlStringCchCatW и RtlStringCchCatA объединяют две строки с подсчетом символов. |
RtlStringCchCatExA Функции RtlStringCchCatExW и RtlStringCchCatExA объединяют две строки с подсчетом символов. |
RtlStringCchCatExW Узнайте, как функции RtlStringCchCatExW и RtlStringCchCatExA объединяют две строки с подсчетом символов. |
RtlStringCchCatNA Функции RtlStringCchCatNW и RtlStringCchCatNA объединяют две строки с подсчетом символов, ограничивая размер добавленной строки. |
RtlStringCchCatNExA Функции RtlStringCchCatNExW и RtlStringCchCatNExA объединяют две строки с подсчетом символов, ограничивая размер добавленной строки. |
RtlStringCchCatNExW Узнайте, как функции RtlStringCchCatNExW и RtlStringCchCatNExA объединяют две строки с подсчетом символов, ограничивая размер добавленной строки. |
RtlStringCchCatNW Узнайте, как функции RtlStringCchCatNW и RtlStringCchCatNA объединяют две строки с подсчетом символов, ограничивая размер добавленной строки. |
RtlStringCchCatW Узнайте, как функции RtlStringCchCatW и RtlStringCchCatA объединяют две строки с подсчетом символов. |
RtlStringCchCopyA Функции RtlStringCchCopyW и RtlStringCchCopyA копируют исходную строку, завершающуюся null, в буфер назначения указанной длины. |
RtlStringCchCopyExA Функции RtlStringCchCopyExW и RtlStringCchCopyExA копируют строку с подсчетом символов в буфер. |
RtlStringCchCopyExW Узнайте, как функции RtlStringCchCopyExW и RtlStringCchCopyExA копируют строку с подсчетом символов в буфер. |
RtlStringCchCopyNA Функции RtlStringCchCopyNW и RtlStringCchCopyNA копируют строку с подсчетом символов в буфер, ограничивая размер скопированной строки. |
RtlStringCchCopyNExA Функции RtlStringCchCopyNExW и RtlStringCchCopyNExA копируют строку с подсчетом символов в буфер, ограничивая размер скопированной строки. |
RtlStringCchCopyNExW Узнайте, как функции RtlStringCchCopyNExW и RtlStringCchCopyNExA копируют строку с подсчетом символов в буфер, ограничивая размер скопированной строки. |
RtlStringCchCopyNW Узнайте, как функции RtlStringCchCopyNW и RtlStringCchCopyNA копируют строку с подсчетом символов в буфер, ограничивая размер скопированной строки. |
RtlStringCchCopyUnicodeString Функция RtlStringCchCopyUnicodeString копирует содержимое структуры UNICODE_STRING в указанное назначение. |
RtlStringCchCopyUnicodeStringEx Функция RtlStringCchCopyUnicodeStringEx копирует содержимое структуры UNICODE_STRING в указанное назначение. |
RtlStringCchCopyW Узнайте, как функции RtlStringCchCopyW и RtlStringCchCopyA копируют исходную строку с пустым завершением в целевой буфер указанной длины. |
RtlStringCchLengthA Функции RtlStringCchLengthW и RtlStringCchLengthA определяют длину предоставленной строки в символах. |
RtlStringCchLengthW Узнайте, как функции RtlStringCchLengthW и RtlStringCchLengthA определяют длину предоставленной строки в символах. |
RtlStringCchPrintfA Функции RtlStringCchPrintfW и RtlStringCchPrintfA создают текстовую строку со счетчиком символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchPrintfExA Функции RtlStringCchPrintfExW и RtlStringCchPrintfExA создают текстовую строку со подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchPrintfExW Узнайте, как функции RtlStringCchPrintfExW и RtlStringCchPrintfExA создают текстовую строку с подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchPrintfW Узнайте, как функции RtlStringCchPrintfW и RtlStringCchPrintfA создают текстовую строку с подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchVPrintfA Функции RtlStringCchVPrintfW и RtlStringCchVPrintfA создают текстовую строку со подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchVPrintfExA Функции RtlStringCchVPrintfExW и RtlStringCchVPrintfExA создают текстовую строку с подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchVPrintfExW Узнайте, как функции RtlStringCchVPrintfExW и RtlStringCchVPrintfExA создают текстовую строку с подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlStringCchVPrintfW Узнайте, как функции RtlStringCchVPrintfW и RtlStringCchVPrintfA создают текстовую строку с подсчетом символов с форматированием на основе предоставленных сведений о форматировании. |
RtlUnalignedStringCbLengthW Функция RtlUnalignedStringCbLengthW — это версия функции RtlStringCbLength, которая принимает неровный указатель на строку символов Юникода. |
RtlUnalignedStringCchLengthW Функция RtlUnalignedStringCchLengthW — это версия функции RtlStringCchLength, которая принимает неровный указатель на строку символов Юникода. |
RtlUnicodeStringCat Функция RtlUnicodeStringCat объединяет две строки, содержащиеся в UNICODE_STRING структурах. |
RtlUnicodeStringCatEx Функция RtlUnicodeStringCatEx объединяет две строки, содержащиеся в UNICODE_STRING структурах. |
RtlUnicodeStringCatString Функция RtlUnicodeStringCatString объединяет две строки, если конечная строка содержится в UNICODE_STRING структуре. |
RtlUnicodeStringCatStringEx Функция RtlUnicodeStringCatStringEx объединяет две строки, если конечная строка содержится в структуре UNICODE_STRING. |
RtlUnicodeStringCbCatN Функция RtlUnicodeStringCbCatN объединяет две строки, содержащиеся в UNICODE_STRING структурах, при этом ограничивая размер скопированной строки. |
RtlUnicodeStringCbCatNEx Функция RtlUnicodeStringCbCatNEx объединяет две строки, содержащиеся в UNICODE_STRING структурах, при этом ограничивая размер скопированной строки. |
RtlUnicodeStringCbCatStringN Функция RtlUnicodeStringCbCatStringN объединяет две строки, когда конечная строка содержится в структуре UNICODE_STRING, ограничивая при этом размер добавленной строки. |
RtlUnicodeStringCbCatStringNEx Функция RtlUnicodeStringCbCatStringNEx объединяет две строки, когда конечная строка содержится в структуре UNICODE_STRING, ограничивая при этом размер добавленной строки. |
RtlUnicodeStringCbCopyN Функция RtlUnicodeStringCbCopyN копирует строку из одной структуры UNICODE_STRING в другую, ограничивая размер скопированной строки. |
RtlUnicodeStringCbCopyNEx Функция RtlUnicodeStringCbCopyNEx копирует строку из одной структуры UNICODE_STRING в другую, ограничивая размер скопированной строки. |
RtlUnicodeStringCbCopyStringN Функция RtlUnicodeStringCbCopyStringN копирует строку в структуру UNICODE_STRING, ограничивая при этом размер скопированной строки. |
RtlUnicodeStringCbCopyStringNEx Функция RtlUnicodeStringCbCopyStringNEx копирует строку в структуру UNICODE_STRING, ограничивая размер скопированной строки. |
RtlUnicodeStringCchCatN Функция RtlUnicodeStringCchCatN объединяет две строки, содержащиеся в UNICODE_STRING структурах, при этом ограничивая размер скопированной строки. |
RtlUnicodeStringCchCatNEx Функция RtlUnicodeStringCchCatNEx объединяет две строки, содержащиеся в UNICODE_STRING структурах, при этом ограничивая размер скопированной строки. |
RtlUnicodeStringCchCatStringN Функция RtlUnicodeStringCchCatStringN объединяет две строки, когда конечная строка содержится в структуре UNICODE_STRING, ограничивая при этом размер добавленной строки. |
RtlUnicodeStringCchCatStringNEx Функция RtlUnicodeStringCchCatStringNEx объединяет две строки, когда конечная строка содержится в структуре UNICODE_STRING, ограничивая при этом размер добавленной строки. |
RtlUnicodeStringCchCopyN Функция RtlUnicodeStringCchCopyN копирует строку из одной структуры UNICODE_STRING в другую, ограничивая размер скопированной строки. |
RtlUnicodeStringCchCopyNEx Функция RtlUnicodeStringCchCopyNEx копирует строку из одной структуры UNICODE_STRING в другую, ограничивая размер скопированной строки. |
RtlUnicodeStringCchCopyStringN Функция RtlUnicodeStringCchCopyStringN копирует строку в структуру UNICODE_STRING, ограничивая размер скопированной строки. |
RtlUnicodeStringCchCopyStringNEx Функция RtlUnicodeStringCchCopyStringNEx копирует строку в структуру UNICODE_STRING, ограничивая размер скопированной строки. |
RtlUnicodeStringCopy Функция RtlUnicodeStringCopy копирует строку из одной структуры UNICODE_STRING в другую. |
RtlUnicodeStringCopyEx Функция RtlUnicodeStringCopyEx копирует строку из одной структуры UNICODE_STRING в другую. |
RtlUnicodeStringCopyString Функция RtlUnicodeStringCopyString копирует строку в структуру UNICODE_STRING. |
RtlUnicodeStringCopyStringEx Функция RtlUnicodeStringCopyStringEx копирует строку в структуру UNICODE_STRING. |
RtlUnicodeStringInit Функция RtlUnicodeStringInit инициализирует структуру UNICODE_STRING. |
RtlUnicodeStringInitEx Функция RtlUnicodeStringInitEx инициализирует структуру UNICODE_STRING. |
RtlUnicodeStringPrintf Функция RtlUnicodeStringPrintf создает текстовую строку с форматированием, основанным на предоставленных сведениях о форматировании, и сохраняет строку в UNICODE_STRING структуре. |
RtlUnicodeStringPrintfEx Функция RtlUnicodeStringPrintfEx создает текстовую строку с форматированием, основанной на предоставленных сведениях о форматировании, и сохраняет строку в UNICODE_STRING структуре. |
RtlUnicodeStringValidate Функция RtlUnicodeStringValidate проверяет содержимое структуры UNICODE_STRING. |
RtlUnicodeStringValidateEx Функция RtlUnicodeStringValidateEx проверяет содержимое структуры UNICODE_STRING. |
RtlUnicodeStringVPrintf Функция RtlUnicodeStringVPrintf создает текстовую строку с форматированием, основанным на предоставленных сведениях о форматировании, и сохраняет строку в UNICODE_STRING структуре. |
RtlUnicodeStringVPrintfEx Функция RtlUnicodeStringVPrintfEx создает текстовую строку с форматированием, основанной на предоставленных сведениях о форматировании, и сохраняет строку в UNICODE_STRING структуре. |