Fonction DownlevelVerifyScripts
Compare deux listes énumérées de scripts.
Remarque
Cette fonction est utilisée uniquement par les applications qui s’exécutent sur des systèmes d’exploitation pré-Windows Vista. Son utilisation nécessite le package de téléchargement. Les applications qui s’exécutent uniquement sur Windows Vista et versions ultérieures doivent appeler VerifyScripts.
Syntaxe
BOOL DownlevelVerifyScripts(
_In_ DWORD dwFlags,
_In_ LPCWSTR lpLocaleScripts,
_In_ int cchLocaleScripts,
_In_ LPCWSTR lpTestScripts,
_In_ int cchTestScripts
);
Paramètres
-
dwFlags [in]
-
Indicateurs spécifiant les options de vérification de script.
Valeur Signification - VS_ALLOW_LATIN
Autorise « Latn » (script latin) dans la liste de tests, même s’il n’est pas dans la liste des paramètres régionaux. -
lpLocaleScripts [in]
-
Pointeur vers la liste des paramètres régionaux, liste énumérée de scripts pour un paramètre régional donné. Cette liste est généralement remplie en appelant DownlevelGetLocaleScripts.
-
cchLocaleScripts [in]
-
Taille, en caractères, de la chaîne indiquée par lpLocaleScripts. L’application définit ce paramètre sur -1 si la chaîne est terminée par Null. Si ce paramètre est défini sur 0, la fonction échoue.
-
lpTestScripts [in]
-
Pointeur vers la liste de tests, deuxième liste énumérée de scripts. Cette liste est généralement remplie en appelant DownlevelGetStringScripts.
-
cchTestScripts [in]
-
Taille, en caractères, de la chaîne indiquée par lpTestScripts. L’application définit ce paramètre sur -1 si la chaîne est terminée par Null. Si ce paramètre est défini sur 0, la fonction échoue.
Valeur retournée
Retourne TRUE si la liste de tests n’est pas vide et que tous les éléments de la liste sont également inclus dans la liste des paramètres régionaux. Sinon, la fonction retourne FALSE.
Une valeur de retour de FALSE peut indiquer que la liste de tests contient un élément qui n’est pas dans la liste des paramètres régionaux, ou qu’une erreur s’est produite. Pour distinguer ces deux cas, l’application peut appeler GetLastError. Si DownlevelVerifyScripts a correctement déterminé qu’il existe un élément dans la liste de tests qui n’est pas dans la liste des paramètres régionaux, GetLastError retourne ERROR_SUCCESS. Sinon, GetLastError peut retourner l’un des codes d’erreur suivants :
- ERROR_INVALID_FLAGS. Les valeurs fournies pour les indicateurs n’étaient pas valides.
- ERROR_INVALID_PARAMETER. Toutes les valeurs de paramètre n’étaient pas valides.
Notes
Cette fonction compare les chaînes, telles que « Latn;Cyrl; », qui se compose d’une série de noms de script de 4 caractères, où chaque nom de script est suivi d’un point-virgule. Il a également un cas spécial pour tenir compte du fait que le script latin est souvent utilisé dans les langues et les paramètres régionaux pour lesquels il n’est pas natif.
Cette fonction est utile dans le cadre d’une stratégie pour atténuer les problèmes de sécurité liés aux noms de domaine internationaux (IDN).
Voici des exemples de retour de cette fonction et d’un appel ultérieur à GetLastError dans différents scénarios. Les deux derniers exemples illustrent, respectivement, un cas dans lequel la liste de tests n’a pas de point-virgule de fin (chaîne incorrecte) et un cas dans lequel la liste de tests est vide.
Chaîne « Paramètres régionaux » | Chaîne « test » | dwFlags | Valeur retournée | Valeur retournée par GetLastError |
---|---|---|---|---|
Hani;Hira;Kana; | Hani; | S/O | VRAI | S/O |
Hani;Hira;Kana; | Hani;Latn; | 0 | FAUX | ERROR_SUCCESS |
Hani;Hira;Kana; | Hani;Latn; | VS_ALLOW_LATIN | VRAI | S/O |
Hani;Hira;Kana; | Cyrl; | S/O | FAUX | ERROR_SUCCESS |
Hani;Hira;Kana; | Cyrl; | S/O | FAUX | ERROR_INVALID_PARAMETER |
Hani;Hira;Kana; | S/O | FAUX | ERROR_SUCCESS |
Le fichier d’en-tête et la DLL requis font partie du téléchargement « API d’atténuation de nom de domaine international (IDN) Microsoft » disponible sur archive.org.
Spécifications
Condition requise | Value |
---|---|
Client minimal pris en charge |
Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
Composant redistribuable |
API d’atténuation de nom de domaine international (IDN) Microsoft sur Windows XP avec SP2, Windows Server 2003 avec SP1 ou Windows Vista |
En-tête |
|
DLL |
|
Voir aussi