Fonction RtlUnalignedStringCchLengthW (ntstrsafe.h)
La fonction RtlUnalignedStringCchLengthW est une version de la fonction RtlStringCchLength qui accepte un pointeur non aligné vers une chaîne de caractères Unicode.
Syntaxe
NTSTRSAFEDDI RtlUnalignedStringCchLengthW(
[in] STRSAFE_PCUNZWCH psz,
[in] size_t cchMax,
[out, optional] size_t *pcchLength
);
Paramètres
[in] psz
Fournit un pointeur vers une mémoire tampon qui contient une chaîne terminée par null dont la longueur RtlUnalignedStringCchLengthW sera case activée.
[in] cchMax
Fournit le nombre maximal de caractères autorisés dans la mémoire tampon vers laquelle psz pointe, y compris le caractère NULL de fin. Cette valeur ne peut pas dépasser NTSTRSAFE_MAX_CCH.
[out, optional] pcchLength
facultatif. Si l’appelant fournit un pointeur d’adresse non NULL , la fonction charge l’adresse avec la longueur, en caractères, de la chaîne contenue dans la mémoire tampon vers laquelle pointe psz . La longueur n’inclut pas le caractère NULL de fin de la chaîne.
Valeur retournée
RtlUnalignedStringCchLengthW retourne l’une des valeurs NTSTATUS suivantes.
Code de retour | Description |
---|---|
|
Cette réussite status signifie que la chaîne que le paramètre psz n’était pas NULL et que la longueur de la chaîne (y compris le caractère NULL de fin) était inférieure ou égale à des caractères cchMax. |
|
Cette erreur status signifie que la valeur dans psz est NULL, que cchMax est supérieur à NTSTRSAFE_MAX_CCH ou que psz est plus long que cchMax. |
Pour plus d’informations sur la façon de tester les valeurs NTSTATUS, consultez Utilisation de valeurs NTSTATUS.
Remarques
La fonction RtlUnalignedStringCchLengthW est disponible pour les architectures de processeur, telles que itanium et x64, qui provoquent des exceptions d’alignement lorsque le logiciel tente d’accéder à des données non alignées. Sur ces processeurs, vous pouvez utiliser RtlUnalignedStringCchLengthW au lieu de RtlStringCchLength pour éviter les exceptions d’alignement. (Pour les processeurs qui ne provoquent pas d’exceptions d’alignement, RtlUnalignedStringCchLengthW est équivalent à RtlStringCchLength.)
Pour plus d’informations sur les fonctions de chaîne sécurisée, consultez Utilisation de fonctions de chaîne sécurisée.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows XP avec Service Pack 1 (SP1) et versions ultérieures de Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | ntstrsafe.h (include Ntstrsafe.h) |
Bibliothèque | Ntstrsafe.lib |
IRQL | Toutes les chaînes si manipulées résident toujours en mémoire, sinon PASSIVE_LEVEL |