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이면 루틴은 문자열 데이터를 저장할 새 버퍼를 할당하고 DestinationString의 버퍼 멤버를 업데이트하여 새 버퍼를 가리킵니다. 그렇지 않으면 루틴은 현재 지정된 버퍼를 사용하여 문자열을 저장합니다.
[in] SourceString
유니코드로 변환할 ANSI 문자열을 포함하는 ANSI_STRING 구조체에 대한 포인터입니다.
[in] AllocateDestinationString
대상 문자열에 대한 버퍼 공간 할당을 제어합니다.
TRUE
DestinationString에 버퍼 공간이 할당됩니다. TRUE로 설정하면 RtlFreeUnicodeString을 사용하여 버퍼의 할당을 취소해야 합니다.
FALSE
DestinationString에 버퍼 공간이 할당되지 않습니다.
반환 값
다양한 NTSTATUS 값은 NTSTATUS에 정의됩니다. H는 Windows DDK와 함께 배포됩니다.
반환 코드 | 설명 |
---|---|
|
ANSI 문자열이 유니코드로 변환되었습니다. 실패 시 루틴은 메모리를 할당하지 않습니다. |
설명
변환은 현재 시스템 로캘 정보와 관련하여 수행됩니다.
호출자가 AllocateDestinationString을TRUE로 설정하면 루틴은 DestinationString의 버퍼 멤버를 할당하는 버퍼에 대한 포인터로 바꿉니다. 루틴이 오류 상태 코드를 반환하는 경우에도 이전 값을 덮어쓸 수 있습니다.
이 함수에 대한 가져오기 라이브러리가 없으므로 GetProcAddress를 사용해야 합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winternl.h |
라이브러리 | ntdll.lib |
DLL | ntdll.dll |