RtlUTF8ToUnicodeN fonction)
Convertit la chaîne source spécifiée en chaîne Unicode, à l’aide de la page de codes UTF-8 (Unicode Transformation Format) de 8 bits.
Syntaxe
NTSTATUS WINAPI RtlUTF8ToUnicodeN(
_Out_ PWSTR UnicodeStringDestination,
_In_ ULONG UnicodeStringMaxByteCount,
_Out_opt_ PULONG UnicodeStringActualByteCount,
_In_ PCCH UTF8StringSource,
_In_ ULONG UTF8StringByteCount
);
Paramètres
-
UnicodeStringDestination [ à]
-
Pointeur vers une mémoire tampon allouée par l’appelant qui reçoit la chaîne traduite.
-
UnicodeStringMaxByteCount [ dans]
-
Nombre maximal d’octets à écrire dans UnicodeStringDestination. Si cette valeur provoque la troncation de la chaîne traduite, RtlUTF8ToUnicodeN retourne un état d’erreur.
-
UnicodeStringActualByteCount [ out, facultatif]
-
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 avoir la valeur null. Si la chaîne est tronquée, le nombre retourné compte le nombre de chaînes tronquées réel.
-
UTF8StringSource [ dans]
-
Pointeur vers la chaîne à traduire.
-
UTF8StringByteCount [ dans]
-
Taille, en octets, de la chaîne sur UTF8StringSource.
Valeur retournée
RtlUTF8ToUnicodeN retourne l’une des valeurs NTSTATUS suivantes :
| Code de retour | Description |
|---|---|
|
La chaîne a été convertie en Unicode. |
|
Un caractère d’entrée non valide a été rencontré et remplacé. Cet État est considéré comme un état de réussite. |
|
Les deux pointeurs vers UnicodeStringDestination et UnicodeStringActualByteCount étaient null. |
|
UTF8StringSource a la valeur null. |
|
UnicodeStringDestination a été tronqué. |
Remarques
Bien que UnicodeStringActualByteCount soit facultatif et peut avoir la valeur 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.
Si la sortie est tronquée et qu’un caractère d’entrée non valide est rencontré, la fonction retourne une _ erreur de mémoire tampon d’état _ insuffisante _ .
Si UnicodeStringDestination a la valeur null , la fonction retourne le nombre d’octets requis pour héberger la chaîne traduite sans aucune troncation dans UnicodeStringActualByteCount.
RtlUTF8ToUnicodeN ne modifie pas la chaîne source, sauf si les pointeurs UnicodeStringDestination et UTF8StringSource sont équivalents. La chaîne Unicode retournée n’est pas terminée par un caractère null.
Les appelants de RtlUTF8ToUnicodeN doivent être exécutés au niveau IRQL < Dispatch _ .
Configuration requise
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge |
applications de [ bureau Windows 7 uniquement] |
| Serveur minimal pris en charge |
Windows Serveur 2008 R2, [ applications de bureau uniquement] |
| En-tête |
|
| DLL |
|