Función RtlUnicodeToMultiByteN (ntifs.h)
La rutina RtlUnicodeToMultiByteN convierte la cadena Unicode especificada en una nueva cadena de caracteres mediante la página de códigos ANSI (ACP) del sistema actual. La cadena traducida no es necesariamente de un juego de caracteres multibyte.
Sintaxis
NTSYSAPI NTSTATUS RtlUnicodeToMultiByteN(
[out] PCHAR MultiByteString,
[in] ULONG MaxBytesInMultiByteString,
[out, optional] PULONG BytesInMultiByteString,
[in] PCWCH UnicodeString,
[in] ULONG BytesInUnicodeString
);
Parámetros
[out] MultiByteString
Puntero a un búfer asignado por el autor de la llamada para recibir la cadena traducida. El búfer MultiByteString no debe superponerse con el búfer UnicodeString.
[in] MaxBytesInMultiByteString
Número máximo de bytes que se van a escribir en MultiByteString. Si este valor hace que la cadena traducida se trunque, RtlUnicodeToMultiByteN no devuelve un estado de error.
[out, optional] BytesInMultiByteString
Puntero a una variable asignada por el autor de la llamada que recibe la longitud, en bytes, de la cadena traducida. Este parámetro es opcional y puede ser NULL.
[in] UnicodeString
Puntero a la cadena de origen Unicode que se va a traducir.
[in] BytesInUnicodeString
Tamaño, en bytes, de la cadena en UnicodeString.
Valor devuelto
RtlUnicodeToMultiByteN devuelve STATUS_SUCCESS.
Comentarios
RtlUnicodeToMultiByteN traduce la cadena Unicode dada mediante la página de códigos ANSI del sistema actual que se instaló en el tiempo de arranque del sistema.
Aunque BytesInMultiByteString es opcional y puede ser NULL, los autores de llamadas deben proporcionar almacenamiento para él, ya que la longitud recibida se puede usar para determinar si la conversión se realizó correctamente.
Esta rutina no modifica la cadena de origen. Devuelve una cadena multibyte terminada en null si el bytes especificado BytesInUnicodeString incluía un terminador NULL y si el objeto MaxBytesInMultiByteString dado no provocó el truncamiento.
Al igual que RtlUnicodeToMultiByteSize, RtlUnicodeToMultiByteN solo admite caracteres Unicode precomponidos asignados a la página de códigos ANSI del sistema actual instalada en el arranque del sistema.
Para obtener información sobre otras rutinas de control de cadenas, vea Rutinas de la biblioteca en tiempo de ejecución (RTL).
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Fltkernel.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |