RtlOemToUnicodeN-Funktion (ntifs.h)
Die RtlOemToUnicodeN Routine übersetzt die angegebene Quellzeichenfolge mithilfe der aktuellen System-OEM-Codeseite in eine Unicode-Zeichenfolge.
Syntax
NTSYSAPI NTSTATUS RtlOemToUnicodeN(
[out] PWCH UnicodeString,
[in] ULONG MaxBytesInUnicodeString,
[out, optional] PULONG BytesInUnicodeString,
[in] PCCH OemString,
[in] ULONG BytesInOemString
);
Parameter
[out] UnicodeString
Zeigen Sie auf einen vom Aufrufer zugewiesenen Puffer, der die übersetzte Zeichenfolge empfängt.
[in] MaxBytesInUnicodeString
Maximale Anzahl von Bytes, die bei UnicodeString-geschrieben werden sollen. Wenn dieser Wert bewirkt, dass die übersetzte Zeichenfolge abgeschnitten wird, gibt RtlOemToUnicodeN- keinen Fehlerstatus zurück.
[out, optional] BytesInUnicodeString
Zeigen Sie auf eine vom Aufrufer zugewiesene Variable, die die Länge der übersetzten Zeichenfolge in Bytes empfängt. Dieser Parameter kann NULL-sein.
[in] OemString
Zeiger auf die OEM-Quellzeichenfolge, die in Unicode übersetzt werden soll. Wenn die aktuelle Codeseite einen Einzelbyte-Zeichensatz beschreibt, kann dieser Zeiger dieselbe Adresse wie UnicodeString-sein.
[in] BytesInOemString
Länge der Zeichenfolge in Bytes bei OemString-.
Rückgabewert
RtlOemToUnicodeN gibt STATUS_SUCCESS zurück, wenn die vollständige Zeichenfolge bei OemString erfolgreich übersetzt und an UnicodeString-zurückgegeben wurde. Andernfalls kann sie STATUS_BUFFER_OVERFLOW zurückgeben, wenn die Zielzeichenfolge abgeschnitten werden muss, um die angegebene MaxBytesInUnicodeString-. STATUS_BUFFER_OVERFLOW ist ein NTSTATUS-Warnungswert.
Bemerkungen
RtlOemToUnicodeN- unterstützt nur vorkompilierte Unicode-Zeichen, die der aktuellen System-OEM-Codeseite zugeordnet sind, die zur Systemstartzeit installiert ist.
Wenn die aktuelle Systemcodeseite einen Single-Byte-Zeichensatz definiert, werden alle Einzelbytezeichen im Bereich 0x00 bis 0x7f einfach null erweitert in der entsprechenden Unicode-Zeichenfolge, um den Konvertierungsvorgang zu beschleunigen. Der Zeichenwert 0x5c in einer solchen Codeseite wird in das umgekehrte Schrägstrichzeichen übersetzt, auch wenn die aktuelle Codeseite dieses Zeichen als Yen-Zeichen definiert.
Für den Rückgabewert STATUS_SUCCESS gibt der Wert BytesInUnicodeString, falls vorhanden, die Länge der zurückgegebenen Unicode-Zeichenfolge anstelle der angegebenen MaxBytesInUnicodeStringan.
Diese Routine ändert die Quellzeichenfolge nur, wenn die UnicodeString- und OemString- Zeiger gleichwertig sind. Die zurückgegebene Unicode-Zeichenfolge wird null beendet, wenn sie nicht abgeschnitten wird.
Informationen zu anderen Zeichenfolgenbehandlungsroutinen finden Sie unter Run-Time Library (RTL)-Routinen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | < DISPATCH_LEVEL |