Función DownlevelVerifyScripts
Compara dos listas enumeradas de scripts.
Nota:
Esta función solo la usan las aplicaciones que se ejecutan en sistemas operativos anteriores a Windows Vista. Su uso requiere el paquete de descarga. Las aplicaciones que solo se ejecutan en Windows Vista y versiones posteriores deben llamar a VerifyScripts.
Sintaxis
BOOL DownlevelVerifyScripts(
_In_ DWORD dwFlags,
_In_ LPCWSTR lpLocaleScripts,
_In_ int cchLocaleScripts,
_In_ LPCWSTR lpTestScripts,
_In_ int cchTestScripts
);
Parámetros
-
dwFlags [in]
-
Marcas que especifican las opciones de comprobación del script.
Value Significado - VS_ALLOW_LATIN
Permitir "Latn" (script latino) en la lista de pruebas, incluso si no está en la lista de configuración regional. -
lpLocaleScripts [in]
-
Puntero a la lista de configuración regional, la lista enumerada de scripts para una configuración regional determinada. Normalmente, esta lista se rellena llamando a DownlevelGetLocaleScripts.
-
cchLocaleScripts [in]
-
Tamaño, en caracteres, de la cadena indicada por lpLocaleScripts. La aplicación establece este parámetro en -1 si la cadena termina en null. Si este parámetro se establece en 0, se produce un error en la función.
-
lpTestScripts [in]
-
Puntero a la lista de pruebas, una segunda lista enumerada de scripts. Normalmente, esta lista se rellena llamando a DownlevelGetStringScripts.
-
cchTestScripts [in]
-
Tamaño, en caracteres, de la cadena indicada por lpTestScripts. La aplicación establece este parámetro en -1 si la cadena termina en null. Si este parámetro se establece en 0, se produce un error en la función.
Valor devuelto
Devuelve TRUE si la lista de pruebas no está vacía y todos los elementos de la lista también se incluyen en la lista de configuración regional. De lo contrario, la función devuelve FALSE.
Un valor devuelto de FALSE puede indicar que la lista de pruebas contiene un elemento que no está en la lista de configuración regional o puede indicar un error. Para distinguir entre estos dos casos, la aplicación puede llamar a GetLastError. Si DownlevelVerifyScripts ha determinado correctamente que hay un elemento en la lista de pruebas que no está en la lista de configuración regional, GetLastError devuelve ERROR_SUCCESS. De lo contrario, GetLastError puede devolver uno de los siguientes códigos de error:
- ERROR_INVALID_FLAGS. Los valores proporcionados para las marcas no eran válidos.
- ERROR_INVALID_PARAMETER. Cualquiera de los valores de parámetro no era válido.
Comentarios
Esta función compara cadenas, como "Latn; Cyrl;", que consta de una serie de nombres de script de 4 caracteres, con cada nombre de script seguido de un punto y coma. También tiene un caso especial para tener en cuenta el hecho de que el alfabeto latino se usa a menudo en idiomas y configuraciones regionales para los que no es nativo.
Esta función es útil como parte de una estrategia para mitigar los problemas de seguridad relacionados con nombres de dominio internacionalizados (IDN).
A continuación se muestran ejemplos de la devolución de esta función y una llamada posterior a GetLastError en varios escenarios. Los dos últimos ejemplos ilustran, respectivamente, un caso en el que la lista de pruebas carece de punto y coma de terminación (cadena con formato incorrecto) y un caso en el que la lista de pruebas está vacía.
Cadena "Configuración regional" | Cadena "Test" | dwFlags | Valor devuelto | GetLastError return |
---|---|---|---|---|
Hani; Hira; Kana; | Hani; | N/D | VERDADERO | N/D |
Hani; Hira; Kana; | Hani;Latn; | 0 | FALSO | ERROR_SUCCESS |
Hani; Hira; Kana; | Hani;Latn; | VS_ALLOW_LATIN | VERDADERO | N/D |
Hani; Hira; Kana; | Cyrl; | N/D | FALSO | ERROR_SUCCESS |
Hani; Hira; Kana; | Cyrl; | N/D | FALSO | ERROR_INVALID_PARAMETER |
Hani; Hira; Kana; | N/D | FALSO | ERROR_SUCCESS |
El archivo de encabezado y DLL necesarios forman parte del "API de mitigación de nombres de dominio internacionalizados (IDN) de Microsoft" descarga disponible en archive.org.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo compatible |
Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows Server 2003 [solo aplicaciones de escritorio] |
Redistribuible |
API de mitigación de nombres de dominio internacionalizados (IDN) de Microsoft en Windows XP con SP2,Windows Server 2003 con SP1 o Windows Vista |
Encabezado |
|
Archivo DLL |
|
Consulte también