Fonction RtlUnicodeStringValidateEx (ntstrsafe.h)
La fonction RtlUnicodeStringValidateEx valide le contenu d’une structure UNICODE_STRING .
Syntaxe
NTSTRSAFEDDI RtlUnicodeStringValidateEx(
[in] PCUNICODE_STRING SourceString,
[in] DWORD dwFlags
);
Paramètres
[in] SourceString
Facultatif. Pointeur vers une structure UNICODE_STRING à valider. Ce pointeur peut être NULL, mais uniquement si STRSAFE_IGNORE_NULLS est défini dans dwFlags.
[in] dwFlags
L’indicateur suivant est défini :
STRSAFE_IGNORE_NULLS
Si cet indicateur est défini, le pointeur source peut être NULL. RtlUnicodeStringValidateEx traite les pointeurs de mémoire tampon source NULL comme des chaînes vides (TEXT(« »)).
Valeur retournée
RtlUnicodeStringValidateEx retourne l’une des valeurs NTSTATUS suivantes.
Code de retour | Description |
---|---|
|
Cette réussite status signifie que la fonction s’est terminée avec succès. |
|
Cette erreur status signifie que la fonction a reçu un paramètre d’entrée non valide. Pour plus d’informations, consultez la liste suivante. |
Si STRSAFE_IGNORE_NULLS n’est pas défini dans dwFlags, RtlUnicodeStringValidateEx retourne la valeur STATUS_INVALID_PARAMETER lorsque l’un des éléments suivants se produit :
- SourceString->Length % sizeof(WCHAR) n’est pas égal à zéro.
- SourceString->MaximumLength % sizeof(WCHAR) n’est pas égal à zéro.
- SourceString->La longueur est supérieure à SourceString->MaximumLength.
- SourceString->MaximumLength est supérieur à NTSTRSAFE_UNICODE_STRING_MAX_CCH * sizeof(WCHAR).
- SourceString->Buffer est égal à NULL , mais SourceString->Length ou SourceString->MaximumLength n’est pas égal à zéro.
- Un indicateur non valide est spécifié pour dwFlags.
Remarques
Le pointeur SourceString ne peut pas être NULL , sauf si l’indicateur STRSAFE_IGNORE_NULLS est défini.
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 |