Fungsi RtlOemToUnicodeN (ntifs.h)

Rutinitas RtlOemToUnicodeN menerjemahkan string sumber yang ditentukan ke dalam string Unicode, menggunakan halaman kode OEM sistem saat ini.

Sintaks

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

Parameter

[out] UnicodeString

Penunjuk ke buffer yang dialokasikan penelepon yang menerima string yang diterjemahkan.

[in] MaxBytesInUnicodeString

Jumlah maksimum byte yang akan ditulis di UnicodeString. Jika nilai ini menyebabkan string yang diterjemahkan terpotok, RtlOemToUnicodeN tidak mengembalikan status kesalahan.

[out, optional] BytesInUnicodeString

Penunjuk ke variabel yang dialokasikan penelepon yang menerima panjang, dalam byte, dari string yang diterjemahkan. Parameter ini bisa NULL.

[in] OemString

Arahkan ke string sumber OEM untuk diterjemahkan ke dalam Unicode. Jika halaman kode saat ini menjelaskan kumpulan karakter byte tunggal, penunjuk ini bisa menjadi alamat yang sama dengan UnicodeString.

[in] BytesInOemString

Panjang, dalam byte, dari string di OemString.

Nilai kembali

RtlOemToUnicodeN mengembalikan STATUS_SUCCESS jika string lengkap di OemString berhasil diterjemahkan dan dikembalikan di UnicodeString. Jika tidak, itu dapat mengembalikan STATUS_BUFFER_OVERFLOW jika string tujuan harus dipotok agar sesuai dengan MaxBytesInUnicodeString yang diberikan. STATUS_BUFFER_OVERFLOW adalah nilai NTSTATUS peringatan.

Keterangan

RtlOemToUnicodeN hanya mendukung karakter Unicode yang telah dikompilasi sebelumnya yang dipetakan ke halaman kode OEM sistem saat ini yang diinstal pada waktu boot sistem.

Jika halaman kode sistem saat ini menentukan kumpulan karakter byte tunggal, semua karakter byte tunggal dalam rentang 0x00 ke 0x7f hanya nol diperluas dalam string Unicode yang sesuai untuk mempercepat operasi konversi. Nilai karakter 0x5c di halaman kode tersebut diterjemahkan ke dalam karakter garis miring terbalik, bahkan jika halaman kode saat ini mendefinisikan karakter ini sebagai tanda Yen.

Untuk nilai yang dikembalikan STATUS_SUCCESS, nilai BytesInUnicodeString, jika ada, menunjukkan panjang string Unicode yang dikembalikan, bukan MaxBytesInUnicodeString yang diberikan.

Rutinitas ini tidak mengubah string sumber kecuali pointer UnicodeString dan OemString setara. Untai (karakter) Unicode yang dikembalikan dihentikan null jika tidak dipotok.

Untuk informasi tentang rutinitas penanganan string lainnya, lihat Rutinitas Pustaka Run-Time (RTL).

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header ntifs.h (termasuk Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Lihat juga

RtlOemStringToCountedUnicodeString

RtlOemStringToUnicodeString

RtlUnicodeToOemN