Fonction RtlUnicodeToMultiByteN (ntifs.h)
La routine RtlUnicodeToMultiByteN traduit la chaîne Unicode spécifiée en une nouvelle chaîne de caractères, à l’aide de la page de codes ANSI (ACP) système actuelle. La chaîne traduite ne provient pas nécessairement d’un jeu de caractères multioctets.
Syntaxe
NTSYSAPI NTSTATUS RtlUnicodeToMultiByteN(
[out] PCHAR MultiByteString,
[in] ULONG MaxBytesInMultiByteString,
[out, optional] PULONG BytesInMultiByteString,
[in] PCWCH UnicodeString,
[in] ULONG BytesInUnicodeString
);
Paramètres
[out] MultiByteString
Pointeur vers une mémoire tampon allouée à l’appelant pour recevoir la chaîne traduite. La mémoire tampon MultiByteString ne doit pas chevaucher la mémoire tampon UnicodeString.
[in] MaxBytesInMultiByteString
Nombre maximal d’octets à écrire dans MultiByteString. Si cette valeur entraîne la troncation de la chaîne traduite, RtlUnicodeToMultiByteN ne retourne pas d’erreur status.
[out, optional] BytesInMultiByteString
Pointeur vers une variable allouée par l’appelant qui reçoit la longueur, en octets, de la chaîne traduite. Ce paramètre est facultatif et peut être NULL.
[in] UnicodeString
Pointeur vers la chaîne source Unicode à traduire.
[in] BytesInUnicodeString
Taille, en octets, de la chaîne dans UnicodeString.
Valeur retournée
RtlUnicodeToMultiByteN retourne STATUS_SUCCESS.
Remarques
RtlUnicodeToMultiByteN traduit la chaîne Unicode donnée à l’aide de la page de codes ANSI système actuelle qui a été installée au moment du démarrage du système.
Bien que BytesInMultiByteString soit facultatif et puisse être NULL, les appelants doivent fournir un stockage pour celui-ci, car la longueur reçue peut être utilisée pour déterminer si la conversion a réussi.
Cette routine ne modifie pas la chaîne source. Elle retourne une chaîne multioctet terminée par null si l’objet BytesInUnicodeString donné incluait un terminateur NULL et si la valeur MaxBytesInMultiByteString donnée n’a pas causé de troncation.
Comme RtlUnicodeToMultiByteSize, RtlUnicodeToMultiByteN prend uniquement en charge les caractères Unicode précomposés mappés à la page de codes ANSI système actuelle installée au démarrage du système.
Pour plus d’informations sur les autres routines de gestion de chaînes, consultez Routines de la bibliothèque d’exécution (RTL).
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ntifs.h (include Fltkernel.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |