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


Функция RtlAnsiStringToUnicodeString (winternl.h)

Преобразует указанную исходную строку ANSI в строку Юникода.

Синтаксис

NTSTATUS RtlAnsiStringToUnicodeString(
  [in, out] PUNICODE_STRING DestinationString,
  [in]      PCANSI_STRING   SourceString,
  [in]      BOOLEAN         AllocateDestinationString
);

Параметры

[in, out] DestinationString

Указатель на структуру UNICODE_STRING для хранения преобразованной строки Юникода. Если параметр AllocateDestinationString имеет значение TRUE, подпрограмма выделяет новый буфер для хранения строковых данных и обновляет элемент Bufferэлемента DestinationString , чтобы он указывал на новый буфер. В противном случае подпрограмма использует указанный в данный момент буфер для хранения строки.

[in] SourceString

Указатель на структуру ANSI_STRING , содержащую строку ANSI для преобразования в Юникод.

[in] AllocateDestinationString

Управляет выделением буферного пространства для строки назначения.

TRUE

Буферное пространство выделяется для DestinationString. Если задано значение TRUE, буфер должен быть освобожден с помощью RtlFreeUnicodeString.

Ложь.

Буферное пространство не выделяется для DestinationString.

Возвращаемое значение

Различные значения NTSTATUS определяются в NTSTATUS. H, который распространяется вместе с Windows DDK.

Код возврата Описание
STATUS_SUCCESS
Строка ANSI была преобразована в Юникод. При сбое подпрограмма не выделяет память.

Комментарии

Перевод выполняется с учетом сведений о текущем языковом стандарте системы.

Если вызывающий объект присваивает свойству AllocateDestinationString значение TRUE, подпрограмма заменяет элемент Bufferэлемента DestinationString указателем на выделенный буфер. Старое значение можно перезаписать, даже если подпрограмма возвращает код состояния ошибки.

Так как для этой функции нет библиотеки импорта, необходимо использовать GetProcAddress.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winternl.h
Библиотека ntdll.lib
DLL ntdll.dll