Funzione RtlUnicodeToMultiByteN (ntifs.h)
La routine RtlUnicodeToMultiByteN converte la stringa Unicode specificata in una nuova stringa di caratteri, usando la tabella codici ANSI (ACP) di sistema corrente. La stringa tradotta non è necessariamente da un set di caratteri multibyte.
Sintassi
NTSYSAPI NTSTATUS RtlUnicodeToMultiByteN(
[out] PCHAR MultiByteString,
[in] ULONG MaxBytesInMultiByteString,
[out, optional] PULONG BytesInMultiByteString,
[in] PCWCH UnicodeString,
[in] ULONG BytesInUnicodeString
);
Parametri
[out] MultiByteString
Puntatore a un buffer allocato dal chiamante per ricevere la stringa tradotta. buffer MultiByteString non deve sovrapporsi con buffer UnicodeString .
[in] MaxBytesInMultiByteString
Numero massimo di byte da scrivere in MultiByteString. Se questo valore causa il troncamento della stringa tradotta, RtlUnicodeToMultiByteN non restituisce uno stato di errore.
[out, optional] BytesInMultiByteString
Puntatore a una variabile allocata dal chiamante che riceve la lunghezza, in byte, della stringa tradotta. Questo parametro è facoltativo e può essere NULL.
[in] UnicodeString
Puntatore alla stringa di origine Unicode da tradurre.
[in] BytesInUnicodeString
Dimensioni, in byte, della stringa in UnicodeString.
Valore restituito
RtlUnicodeToMultiByteN restituisce STATUS_SUCCESS.
Osservazioni
RtlUnicodeToMultiByteN converte la stringa Unicode specificata usando la tabella codici ANSI di sistema corrente installata in fase di avvio del sistema.
Anche se byteInMultiByteString è facoltativo e può essere NULL, i chiamanti devono fornire spazio di archiviazione, perché la lunghezza ricevuta può essere usata per determinare se la conversione è riuscita.
Questa routine non modifica la stringa di origine. Restituisce una stringa multibyte con terminazione Null se il BytesInUnicodeString specificato incluso un carattere di terminazione NULL e se il MaxBytesInMultiByteString specificato non ha causato il troncamento.
Come RtlUnicodeToMultiByteSize, RtlUnicodeToMultiByteN supporta solo caratteri Unicode precompisi mappati alla tabella codici ANSI di sistema corrente installata all'avvio del sistema.
Per informazioni su altre routine di gestione delle stringhe, vedere Routine RTL (Run-Time Library).
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione | ntifs.h (include Fltkernel.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |