Función LoadMUILibraryA (muiload.h)

Devuelve un identificador a los recursos específicos del idioma asociados a un archivo determinado independiente del idioma (LN).

Nota Para asegurarse de que el archivo DLL se descarga correctamente, las aplicaciones deben coincidir con cada llamada a LoadMUILibrary con una llamada correspondiente a FreeMUILibrary.
 

Sintaxis

HINSTANCE LoadMUILibraryA(
  [in] PCSTR  pszFullModuleName,
  [in] DWORD  dwLangConvention,
  [in] LANGID LangID
);

Parámetros

[in] pszFullModuleName

Puntero a una cadena terminada en null que especifica el nombre de un archivo LN.

[in] dwLangConvention

Marcas que especifican la convención de nomenclatura en los sistemas operativos anteriores a Windows Vista para asignar un nombre a los directorios que contienen los archivos de recursos específicos del idioma. Las marcas son mutuamente excluyentes y el valor predeterminado es MUI_LANGUAGE_NAME.

Valor Significado
MUI_LANGUAGE_ID
Interprete el nombre de la carpeta que contiene los archivos de recursos específicos del idioma mediante el formato de identificador de idioma .
MUI_LANGUAGE_NAME
Interprete el nombre de la carpeta que contiene los archivos de recursos específicos del idioma mediante el formato de nombre de idioma .
 

La marca siguiente está disponible como opción y se puede usar en combinación con cualquiera de las otras marcas.

Valor Significado
MUI_LANGUAGE_EXACT
Si los recursos del idioma identificado no se encuentran en los archivos de recursos, compruebe el módulo principal especificado por pwszModuleName y devuelva un identificador a ese módulo si se ejecuta correctamente.

[in] LangID

Identificador de idioma de los recursos de la interfaz de usuario en un sistema operativo anterior a Windows Vista. El identificador de idioma no puede corresponder al idioma asociado a ninguna de estas constantes de información de configuración regional:

Valor devuelto

Devuelve un identificador al archivo de recursos específico del idioma adecuado si se ejecuta correctamente.

Esta función devuelve NULL si se produce un error. Para obtener información de error extendida, la aplicación puede llamar a GetLastError.

Comentarios

Esta función permite a las aplicaciones desarrolladas mediante la tecnología de recursos MUI de Win32 determinar correctamente el archivo de recursos específico del lenguaje para cargarse en sistemas operativos anteriores a Windows Vista. Las aplicaciones que usan esta función no tienen que compilarse específicamente en Windows Vista, pero tienen que vincularse estáticamente con la biblioteca MUILoad proporcionada en el Microsoft Windows SDK para Windows Vista. Esta función requiere que los archivos de recursos ejecutables y específicos del lenguaje se almacenen mediante convenciones estándar. Consulte Implementación de aplicaciones para obtener más información sobre la selección de ubicación de archivos.

Los siguientes elementos influyen en la carga de archivos binarios satélite por esta función.

  • Versión del sistema operativo que ejecuta la aplicación que llama a la función
  • Marca pasada en el parámetro dwLangConvention
  • Estado del identificador de idioma pasado en el parámetro LangID
Cuando se ejecuta en Windows Vista, esta función carga el módulo principal sin redireccionamiento. Solo se usa el parámetro pszFullModuleName , ya que las funciones del cargador de recursos realizan el redireccionamiento correctamente cuando se les llama. Cuando se ejecuta en sistemas operativos anteriores a Windows Vista, esta función tiene en cuenta todos los parámetros que proporciona la aplicación. Redirige la carga binaria al par binario satélite adecuado asociado al archivo representado por pszFullModuleName. Este proceso reconstituye la ruta de acceso asociada al archivo para imitar el comportamiento de Windows Vista que subyace a las funciones del cargador de recursos.

La aplicación usa el parámetro dwLangConvention para especificar la forma en que se deben sondear los archivos binarios satélite. Si la aplicación establece este parámetro en MUI_LANGUAGE_ID, los archivos binarios se sondearán en carpetas con valores de cadena hexadecimal. (Estos valores no incluyen los 0x iniciales y tienen 4 caracteres de longitud. Por ejemplo, en-US se representa

como "0409" y en como "0009". Si la aplicación establece el parámetro en MUI_LANGUAGE_NAME, la función usa la carga de recursos de Windows Vista, que usa sondeos de carpeta basados en nombres de lenguaje para buscar un archivo satélite.

El estado del identificador de idioma del parámetro LangID afecta al sondeo de recursos. Si la aplicación establece este parámetro en 0, la función usa la lógica de reserva predefinida, dependiente del sistema operativo, para buscar el archivo de recursos específico del idioma adecuado. Cuando la aplicación establece LangID en un valor distinto de cero, el mecanismo de sondeo solo busca la carpeta con nombre adecuado y su equivalente neutro asociado. Para obtener más información, consulte User Interface Language Management.

LoadMUILibrary se basa en la función LoadLibraryEx y es necesario aplicar consideraciones similares a su uso. En concreto, se debe llamar a FreeMUILibrary para cualquier identificador devuelto por LoadMUILibrary. Además, no se debe llamar a LoadMUILibrary desde DllMain. Para obtener más información, vea las secciones Comentarios de LoadLibraryEx y FreeLibrary.

Nota

El encabezado muiload.h define LoadMUILibrary 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en 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 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado muiload.h
Library Muiload.lib
Redistribuible Muiload.lib, incluido en el Windows SDK para Windows 7 que se puede ejecutar en Windows 2000 Professional, Windows 2000 Server, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 y Windows 7.

Consulte también

FreeMUILibrary

Interfaz de usuario multilingüe

Funciones de interfaz de usuario multilingüe