Compartilhar via


Função EnumResourceLanguagesA (winbase.h)

Enumera recursos específicos do idioma, do tipo e nome especificados, associados a um módulo binário.

Sintaxe

BOOL EnumResourceLanguagesA(
  [in] HMODULE          hModule,
  [in] LPCSTR           lpType,
  [in] LPCSTR           lpName,
  [in] ENUMRESLANGPROCA lpEnumFunc,
  [in] LONG_PTR         lParam
);

Parâmetros

[in] hModule

Tipo: HMODULE

O identificador para um módulo a ser pesquisado. A partir do Windows Vista, se este for um executável portátil neutro em linguagem (arquivo LN), os arquivos .mui apropriados (se houver algum) serão incluídos na pesquisa. Se esse for um arquivo .mui específico, somente esse arquivo será pesquisado em busca de recursos.

Se esse parâmetro for NULL, isso equivale a passar um identificador para o módulo usado para criar o processo atual.

[in] lpType

Tipo: LPCTSTR

O tipo de recurso para o qual o idioma está sendo enumerado. Como alternativa, em vez de um ponteiro, esse parâmetro pode ser MAKEINTRESOURCE (ID), em que a ID é um valor inteiro que representa um tipo de recurso predefinido. Para obter uma lista de tipos de recursos predefinidos, consulte tipos de recursos. Para obter mais informações, consulte a seção Comentários abaixo.

[in] lpName

Tipo: LPCTSTR

O nome do recurso para o qual o idioma está sendo enumerado. Como alternativa, em vez de um ponteiro, esse parâmetro pode ser (ID) MAKEINTRESOURCE, em que a ID é o identificador inteiro do recurso. Para obter mais informações, consulte a seção Comentários abaixo.

[in] lpEnumFunc

Tipo: ENUMRESLANGPROC

Um ponteiro para a função de retorno de chamada a ser chamada para cada idioma de recurso enumerado. Para obter mais informações, consulte EnumResLangProcA.

[in] lParam

Tipo: LONG_PTR

Um valor definido pelo aplicativo passado para a função de retorno de chamada. Esse parâmetro pode ser usado na verificação de erros.

Valor de retorno

Tipo: BOOL

Retorna verdadeiro se tiver êxito ou false caso contrário. Para obter informações de erro estendidas, chame GetLastError.

Observações

Se IS_INTRESOURCE(lpType) for TRUE, lpType especificar o identificador inteiro do tipo de recurso fornecido. Caso contrário, ele será um ponteiro para uma cadeia de caracteres terminada em nulo. Se o primeiro caractere da cadeia de caracteres for um sinal de libra (#), os caracteres restantes representarão um número decimal que especifica o identificador inteiro do tipo de recurso. Por exemplo, a cadeia de caracteres "#258" representa o identificador 258.

Da mesma forma, se IS_INTRESOURCE(lpName) for VERDADEIRO, lpName especificar o identificador inteiro do recurso fornecido. Caso contrário, ele será um ponteiro para uma cadeia de caracteres terminada em nulo. Se o primeiro caractere da cadeia de caracteres for um sinal de libra (#), os caracteres restantes representarão um número decimal que especifica o identificador inteiro do recurso.

A partir do Windows Vista, o módulo binário normalmente é um de Executável Portátil (arquivo LN) neutro em linguagem, e a enumeração também incluirá recursos dos arquivos de recurso específicos do idioma correspondentes (arquivos .mui) que contêm recursos de linguagem localizáveis.

Para cada recurso encontrado, EnumResourceLanguages chama uma função de retorno de chamada definida pelo aplicativo lpEnumFunc, passando o identificador de idioma (consulte de Identificadores de Linguagem) da linguagem para a qual um recurso foi encontrado, bem como os vários outros parâmetros que foram passados para EnumResourceLanguages.

Como alternativa, os aplicativos podem chamar EnumResourceLanguagesEx, que fornece controle mais preciso de quais recursos são enumerados.

A função EnumResourceLanguages continua a enumerar idiomas de recursos até que a função de retorno de chamada retorne FALSE ou todas as linguagens de recurso tenham sido enumeradas.

No Windows Vista e posterior, se hModule especificar um arquivo LN, os recursos enumerados poderão residir no arquivo LN ou em um arquivo .mui associado a ele. Se nenhum arquivo .mui for encontrado, somente recursos do arquivo LN serão retornados. Ao contrário de EnumResourceNames e EnumResourceTypes, essa pesquisa examinará vários arquivos .mui. A enumeração começa com arquivos .mui nas pastas associadas a EnumUILanguages. Eles são seguidos por outros arquivos .mui cujos caminhos estão em conformidade com o esquema descrito em de Gerenciamento de Recursos mui. Por fim, o arquivo designado por hModule também é pesquisado.

A enumeração nunca inclui duplicatas: se um recurso com o mesmo nome, tipo e idioma estiver contido no arquivo LN e em um arquivo .mui, o recurso será enumerado apenas uma vez.

Exemplos

Para obter um exemplo, consulte Criando uma lista de recursos.

Nota

O cabeçalho winbase.h define EnumResourceLanguages como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho winbase.h (inclua Windows.h)
biblioteca Kernel32.lib
de DLL Kernel32.dll

Consulte também

Conceitual

EnumResLangProc

EnumResourceLanguagesEx

EnumResourceNames

EnumResourceTypes

de referência de

Recursos