Función EnumUILanguagesA (winnls.h)
Enumera los idiomas de la interfaz de usuario que están disponibles en el sistema operativo y llama a la función de devolución de llamada con cada idioma de la lista.
Sintaxis
BOOL EnumUILanguagesA(
[in] UILANGUAGE_ENUMPROCA lpUILanguageEnumProc,
[in] DWORD dwFlags,
[in] LONG_PTR lParam
);
Parámetros
[in] lpUILanguageEnumProc
Puntero a una función de devolución de llamada EnumUILanguagesProc definida por la aplicación. EnumUILanguages llama a esta función repetidamente para enumerar los idiomas de la lista.
[in] dwFlags
Marcas que identifican el formato de idioma y el filtrado. Las marcas siguientes especifican el formato del lenguaje que se va a pasar a la función de devolución de llamada. Las marcas de formato son mutuamente excluyentes y MUI_LANGUAGE_ID es el valor predeterminado.
Valor | Significado |
---|---|
|
Pase el identificador de idioma de la cadena de idioma a la función de devolución de llamada. |
|
Pase el nombre del idioma en la cadena de idioma a la función de devolución de llamada. |
Las marcas siguientes especifican el filtrado de la función que se va a usar para enumerar los idiomas. Las marcas de filtrado son mutuamente excluyentes y el valor predeterminado es MUI_LICENSED_LANGUAGES.
Windows Vista y versiones posteriores: La aplicación puede establecer dwFlags en 0 o en una o varias de las marcas especificadas. Un valor de 0 hace que el valor del parámetro sea predeterminado MUI_LANGUAGE_ID | MUI_LICENSED_LANGUAGES.
Windows 2000, Windows XP, Windows Server 2003: La aplicación debe establecer dwFlags en 0.
[in] lParam
Valor definido por la aplicación.
Valor devuelto
Devuelve TRUE si es correcto o FALSE en caso contrario. Para obtener información de error extendida, la aplicación puede llamar a GetLastError, que 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 enumera los idiomas de la interfaz de usuario que están disponibles y, según la marca especificada, con licencia para su uso en el sistema operativo. Pasa identificadores de idioma o nombres de idioma, de uno en uno, a la función de devolución de llamada EnumUILanguagesProc . La función EnumUILanguages sigue pasando identificadores de idioma o nombres a la función de devolución de llamada hasta que se encuentre el último idioma o la función de devolución de llamada devuelva FALSE.
En el caso de las aplicaciones que solo se ejecutan en Windows Vista y versiones posteriores, se recomienda MUI_LANGUAGE_NAME en MUI_LANGUAGE_ID. MUI_LANGUAGE_NAME permite diferenciar entre idiomas asociados a una configuración regional complementaria.
Si se especifica la marca MUI_LANGUAGE_ID en la llamada a esta función, las cadenas pasadas a la devolución de llamada
la función será identificadores de lenguaje hexadecimal que no incluyen el 0x inicial y será 4.
caracteres de longitud. Por ejemplo, en-US se pasará como "0409" y en como "0009". El valor "1000" se pasa a la función de devolución de llamada para cualquier idioma asociado a una configuración regional complementaria. Este valor corresponde al valor hexadecimal de LOCALE_CUSTOM_UNSPECIFIED. No distingue entre configuraciones regionales complementarias, aunque el idioma seleccionado esté en la lista de idiomas de la interfaz de usuario preferidos por el usuario o en la lista de idiomas de interfaz de usuario preferidos del sistema.
Firma de C#
[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
static extern System.Boolean EnumUILanguages(
EnumUILanguagesProc lpUILanguageEnumProc,
System.UInt32 dwFlags,
System.IntPtr lParam
);
Nota
El encabezado winnls.h define EnumUILanguages como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | winnls.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |