RtlUTF8ToUnicodeN 함수
UTF-8(8비트 유니코드 변환 형식) 코드 페이지를 사용하여 지정된 소스 문자열을 유니코드 문자열로 변환합니다.
구문
NTSTATUS WINAPI RtlUTF8ToUnicodeN(
_Out_ PWSTR UnicodeStringDestination,
_In_ ULONG UnicodeStringMaxByteCount,
_Out_opt_ PULONG UnicodeStringActualByteCount,
_In_ PCCH UTF8StringSource,
_In_ ULONG UTF8StringByteCount
);
매개 변수
-
UnicodeStringDestination [out]
-
변환된 문자열을 수신하는 호출자가 할당한 버퍼에 대한 포인터입니다.
-
UnicodeStringMaxByteCount [in]
-
UnicodeStringDestination에서 쓸 최대 바이트 수입니다. 이 값으로 인해 번역된 문자열이 잘리면 RtlUTF8ToUnicodeN에서 오류 상태 반환합니다.
-
UnicodeStringActualByteCount [out, optional]
-
변환된 문자열의 길이(바이트)를 수신하는 호출자가 할당한 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다. 문자열이 잘린 경우 반환된 숫자는 실제 잘린 문자열 수를 계산합니다.
-
UTF8StringSource [in]
-
번역할 문자열에 대한 포인터입니다.
-
UTF8StringByteCount [in]
-
UTF8StringSource의 문자열 크기(바이트)입니다.
반환 값
RtlUTF8ToUnicodeN 은 다음 NTSTATUS 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
문자열이 유니코드로 변환되었습니다. |
|
잘못된 입력 문자가 발견되어 대체되었습니다. 이 상태 성공 상태 간주됩니다. |
|
UnicodeStringDestination 및 UnicodeStringActualByteCount에 대한 두 포인터는 모두 NULL이었습니다. |
|
UTF8StringSource는 NULL입니다. |
|
UnicodeStringDestination 이 잘렸습니다. |
설명
UnicodeStringActualByteCount는 선택 사항이며 NULL일 수 있지만 수신된 길이를 사용하여 변환이 성공했는지 여부를 확인할 수 있으므로 호출자는 스토리지를 제공해야 합니다.
출력이 잘리고 잘못된 입력 문자가 발견되면 함수는 STATUS_BUFFER_TOO_SMALL 오류를 반환합니다.
UnicodeStringDestination이 NULL로 설정된 경우 함수는 UnicodeStringActualByteCount에서 잘림 없이 번역된 문자열을 호스트하는 데 필요한 바이트 수를 반환합니다.
UnicodeStringDestination 및 UTF8StringSource 포인터가 동일하지 않는 한 RtlUTF8ToUnicodeN은 원본 문자열을 수정하지 않습니다. 반환된 유니코드 문자열은 null로 종료되지 않습니다.
RtlUTF8ToUnicodeN의 호출자는 IRQL < DISPATCH_LEVEL 실행 중이어야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2008 R2 [데스크톱 앱만 해당] |
헤더 |
|
DLL |
|
추가 정보