Share via


RtlAnsiStringToUnicodeString 함수(winternl.h)

지정된 ANSI 원본 문자열을 유니코드 문자열로 변환합니다.

구문

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

매개 변수

[in, out] DestinationString

변환된 유니코드 문자열을 저장할 UNICODE_STRING 구조체에 대한 포인터입니다. AllocateDestinationStringTRUE이면 루틴은 문자열 데이터를 저장할 새 버퍼를 할당하고 DestinationString버퍼 멤버를 업데이트하여 새 버퍼를 가리킵니다. 그렇지 않으면 루틴은 현재 지정된 버퍼를 사용하여 문자열을 저장합니다.

[in] SourceString

유니코드로 변환할 ANSI 문자열을 포함하는 ANSI_STRING 구조체에 대한 포인터입니다.

[in] AllocateDestinationString

대상 문자열에 대한 버퍼 공간 할당을 제어합니다.

TRUE

DestinationString에 버퍼 공간이 할당됩니다. TRUE로 설정하면 RtlFreeUnicodeString을 사용하여 버퍼의 할당을 취소해야 합니다.

FALSE

DestinationString에 버퍼 공간이 할당되지 않습니다.

반환 값

다양한 NTSTATUS 값은 NTSTATUS에 정의됩니다. H는 Windows DDK와 함께 배포됩니다.

반환 코드 설명
STATUS_SUCCESS
ANSI 문자열이 유니코드로 변환되었습니다. 실패 시 루틴은 메모리를 할당하지 않습니다.

설명

변환은 현재 시스템 로캘 정보와 관련하여 수행됩니다.

호출자가 AllocateDestinationString을TRUE로 설정하면 루틴은 DestinationString버퍼 멤버를 할당하는 버퍼에 대한 포인터로 바꿉니다. 루틴이 오류 상태 코드를 반환하는 경우에도 이전 값을 덮어쓸 수 있습니다.

이 함수에 대한 가져오기 라이브러리가 없으므로 GetProcAddress를 사용해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winternl.h
라이브러리 ntdll.lib
DLL ntdll.dll