Función EnumResourceNamesW (libloaderapi.h)

Enumera los recursos de un tipo especificado dentro de un módulo binario. Para Windows Vista y versiones posteriores, suele ser un ejecutable portátil (LN) independiente del idioma y la enumeración también incluirá recursos de los archivos de recursos específicos del idioma correspondientes (archivos .mui) que contienen recursos de idioma localizables. También es posible que hModule especifique un archivo .mui, en cuyo caso solo se busca recursos.

Sintaxis

BOOL EnumResourceNamesW(
  [in, optional] HMODULE          hModule,
  [in]           LPCWSTR          lpType,
  [in]           ENUMRESNAMEPROCW lpEnumFunc,
  [in]           LONG_PTR         lParam
);

Parámetros

[in, optional] hModule

Tipo: HMODULE

Identificador de un módulo en el que se va a buscar. A partir de Windows Vista, si se trata de un archivo LN, los archivos .mui adecuados (si existen) se incluyen en la búsqueda.

Si este parámetro es NULL, equivale a pasar un identificador al módulo usado para crear el proceso actual.

[in] lpType

Tipo: LPCTSTR

Tipo del recurso para el que se enumera el nombre. Como alternativa, en lugar de un puntero, este parámetro puede ser MAKEINTRESOURCE(ID), donde ID es un valor entero que representa un tipo de recurso predefinido. Para obtener una lista de los tipos de recursos predefinidos, consulte Tipos de recursos. Para obtener más información, vea la sección Comentarios a continuación.

[in] lpEnumFunc

Tipo: ENUMRESNAMEPROC

Puntero a la función de devolución de llamada que se va a llamar para cada nombre o identificador de recurso enumerado. Para obtener más información, vea ENUMRESNAMEPROC.

[in] lParam

Tipo: LONG_PTR

Valor definido por la aplicación que se pasa a la función de devolución de llamada. Este parámetro se puede usar en la comprobación de errores.

Valor devuelto

Tipo: BOOL

El valor devuelto es TRUE si la función se ejecuta correctamente o FALSE si la función no encuentra un recurso del tipo especificado, o si se produce un error en la función por otro motivo. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Si IS_INTRESOURCE(lpszType) es TRUE, lpszType especifica el identificador entero del tipo de recurso especificado. De lo contrario, es un puntero a una cadena terminada en null. Si el primer carácter de la cadena es un signo de libra (#), los caracteres restantes representan un número decimal que especifica el identificador entero del tipo de recurso. Por ejemplo, la cadena "#258" representa el identificador 258.

Para cada recurso encontrado, EnumResourceNames llama a una función de devolución de llamada definida por la aplicación lpEnumFunc, pasando el nombre o el identificador de cada recurso que encuentra, así como los distintos parámetros que se pasaron a EnumResourceNames.

Como alternativa, las aplicaciones pueden llamar a EnumResourceNamesEx, que proporciona un control más preciso de los recursos que se enumeran.

Si un recurso tiene un identificador, el identificador se pasa a la función de devolución de llamada; de lo contrario, el nombre del recurso se pasa a la función de devolución de llamada. Para obtener más información, vea ENUMRESNAMEPROC.

La función EnumResourceNames continúa enumerando los recursos hasta que la función de devolución de llamada devuelve FALSE o se han enumerado todos los recursos.

A partir de Windows Vista, si hModule especifica un archivo LN, los recursos enumerados pueden residir en el archivo LN o en un archivo .mui asociado a él. Si no se encuentra ningún archivo .mui, solo se devuelven los recursos del archivo LN. El orden en que se buscan los archivos .mui es el orden de búsqueda habitual del cargador de recursos; consulte User Interface Language Management para obtener más información. Una vez que se encuentra un archivo .mui adecuado, la búsqueda del archivo .mui se detiene. Dado que todos los archivos .mui que corresponden a un único archivo LN tienen los mismos tipos de recursos, solo se deben enumerar los recursos del archivo .mui encontrado.

La enumeración nunca incluye duplicados: si los recursos con el mismo nombre están contenidos en el archivo LN y en un archivo .mui, el recurso solo se enumerará una vez.

Ejemplos

Para obtener un ejemplo, vea Crear una lista de recursos.

Requisitos

   
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 libloaderapi.h (incluye Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

Conceptual

Referencia