RtlUnicodeToMultiByteN 함수(ntifs.h)
RtlUnicodeToMultiByteN 루틴은 현재 시스템 ANSI 코드 페이지(ACP)를 사용하여 지정된 유니코드 문자열을 새 문자열로 변환합니다. 변환된 문자열이 반드시 멀티바이트 문자 집합에서 온 것은 아닙니다.
구문
NTSYSAPI NTSTATUS RtlUnicodeToMultiByteN(
[out] PCHAR MultiByteString,
[in] ULONG MaxBytesInMultiByteString,
[out, optional] PULONG BytesInMultiByteString,
[in] PCWCH UnicodeString,
[in] ULONG BytesInUnicodeString
);
매개 변수
[out] MultiByteString
변환된 문자열을 수신하기 위해 호출자가 할당한 버퍼에 대한 포인터입니다. MultiByteString 버퍼는 UnicodeString 버퍼와 겹치지 않아야 합니다.
[in] MaxBytesInMultiByteString
MultiByteString에 쓸 최대 바이트 수입니다. 이 값으로 인해 번역된 문자열이 잘리는 경우 RtlUnicodeToMultiByteN은 오류 상태 반환하지 않습니다.
[out, optional] BytesInMultiByteString
변환된 문자열의 길이(바이트)를 수신하는 호출자 할당 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.
[in] UnicodeString
번역할 유니코드 원본 문자열에 대한 포인터입니다.
[in] BytesInUnicodeString
UnicodeString의 문자열 크기(바이트)입니다.
반환 값
RtlUnicodeToMultiByteN은 STATUS_SUCCESS 반환합니다.
설명
RtlUnicodeToMultiByteN 은 시스템 부팅 시 설치된 현재 시스템 ANSI 코드 페이지를 사용하여 지정된 유니코드 문자열을 변환합니다.
BytesInMultiByteString은 선택 사항이며 NULL일 수 있지만 수신된 길이를 사용하여 변환이 성공했는지 여부를 확인할 수 있으므로 호출자는 스토리지를 제공해야 합니다.
이 루틴은 원본 문자열을 수정하지 않습니다. 지정된 BytesInUnicodeString 에 NULL 종결자가 포함되어 있고 지정된 MaxBytesInMultiByteString 에서 잘림이 발생하지 않은 경우 null로 끝나는 멀티바이트 문자열을 반환합니다.
RtlUnicodeToMultiByteSize와 마찬가지로 RtlUnicodeToMultiByteN은 시스템 부팅 시 설치된 현재 시스템 ANSI 코드 페이지에 매핑되는 미리 컴파일된 유니코드 문자만 지원합니다.
다른 문자열 처리 루틴에 대한 자세한 내용은 RTL(런타임 라이브러리) 루틴을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | ntifs.h(Fltkernel.h, Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |