Compartir a través de


Función RtlOemToUnicodeN (ntifs.h)

La rutina de RtlOemToUnicodeN convierte la cadena de origen especificada en una cadena Unicode mediante la página de códigos oem del sistema actual.

Sintaxis

NTSYSAPI NTSTATUS RtlOemToUnicodeN(
  [out]           PWCH   UnicodeString,
  [in]            ULONG  MaxBytesInUnicodeString,
  [out, optional] PULONG BytesInUnicodeString,
  [in]            PCCH   OemString,
  [in]            ULONG  BytesInOemString
);

Parámetros

[out] UnicodeString

Puntero a un búfer asignado por el autor de la llamada que recibe la cadena traducida.

[in] MaxBytesInUnicodeString

Número máximo de bytes que se van a escribir en UnicodeString. Si este valor hace que la cadena traducida se trunquen, rtlOemToUnicodeN no devuelve un estado de error.

[out, optional] BytesInUnicodeString

Puntero a una variable asignada por el autor de la llamada que recibe la longitud, en bytes, de la cadena traducida. Este parámetro puede ser null.

[in] OemString

Puntero a la cadena de origen oem que se va a traducir en Unicode. Si la página de códigos actual describe un juego de caracteres de un solo byte, este puntero puede ser la misma dirección que UnicodeString.

[in] BytesInOemString

Longitud, en bytes, de la cadena en OemString.

Valor devuelto

rtlOemToUnicodeN devuelve STATUS_SUCCESS si la cadena completa de OemString se ha traducido correctamente y se devolvió en UnicodeString. De lo contrario, puede devolver STATUS_BUFFER_OVERFLOW si se debe truncar la cadena de destino para ajustarse al maxBytesInUnicodeString especificado. STATUS_BUFFER_OVERFLOW es un valor NTSTATUS de advertencia.

Observaciones

rtlOemToUnicodeN solo admite caracteres Unicode precomponidos que se asignan a la página de códigos OEM del sistema actual instalada en tiempo de arranque del sistema.

Si la página de códigos del sistema actual define un juego de caracteres de un solo byte, todos los caracteres de un solo byte del intervalo 0x00 a 0x7f simplemente se extienden de cero en la cadena Unicode correspondiente para acelerar la operación de conversión. El valor de carácter 0x5c en dicha página de códigos se traduce en el carácter de barra diagonal inversa, incluso si la página de códigos actual define este carácter como el signo Yen.

Para el valor devuelto STATUS_SUCCESS, el valor de BytesInUnicodeString, si existe, indica la longitud de la cadena Unicode devuelta, en lugar de la MaxBytesInUnicodeString especificada.

Esta rutina no modifica la cadena de origen a menos que el UnicodeString y punteros oemString sean equivalentes. La cadena Unicode devuelta está terminada en null si no está truncada.

Para obtener información sobre otras rutinas de control de cadenas, consulte rutinas de Run-Time Library (RTL).

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de ntifs.h (incluya Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL < DISPATCH_LEVEL

Consulte también

RtlOemStringToCountedUnicodeString

rtlOemStringToUnicodeString

rtlUnicodeToOemN