Compartilhar via


Função FindResourceExA (winbase.h)

Determina o local do recurso com o tipo, o nome e o idioma especificados no módulo especificado.

Sintaxe

HRSRC FindResourceExA(
  [in, optional] HMODULE hModule,
  [in]           LPCSTR  lpType,
  [in]           LPCSTR  lpName,
  [in]           WORD    wLanguage
);

Parâmetros

[in, optional] hModule

Tipo: HMODULE

Um identificador para o módulo cujo arquivo executável portátil ou um arquivo MUI que acompanha contém o recurso. Se esse parâmetro for NULL, a função pesquisa o módulo usado para criar o processo atual.

[in] lpType

Tipo: LPCTSTR

O tipo de recurso. Como alternativa, em vez de um ponteiro, esse parâmetro pode ser MAKEINTRESOURCE(ID), em que ID é o identificador inteiro do determinado

tipo de recurso. Para tipos de recursos padrão, consulte Tipos de recursos. Para obter mais informações, consulte a seção Comentários abaixo.

[in] lpName

Tipo: LPCTSTR

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

[in] wLanguage

Tipo: WORD

O idioma do recurso. Se esse parâmetro for MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL), o idioma atual associado ao thread de chamada será usado.

Para especificar um idioma diferente do idioma atual, use a macro MAKELANGID para criar esse parâmetro. Para obter mais informações, consulte MAKELANGID.

Retornar valor

Tipo: HRSRC

Se a função for bem-sucedida, o valor retornado será um identificador para o bloco de informações do recurso especificado. Para obter um identificador para o recurso, passe esse identificador para a função LoadResource .

Se a função falhar, o valor retornado será NULL. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Se IS_INTRESOURCE for TRUE para x = lpType ou lpName, x especificará o identificador inteiro do tipo ou nome do recurso fornecido. Caso contrário, esses parâmetros são ponteiros longos para cadeias de caracteres terminadas 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 nome ou tipo do recurso. Por exemplo, a cadeia de caracteres "#258" representa o identificador inteiro 258.

Para reduzir a quantidade de memória necessária para um recurso, um aplicativo deve fazer referência a ele por identificador inteiro em vez de por nome.

Um aplicativo pode usar FindResourceEx para localizar qualquer tipo de recurso, mas essa função só deve ser usada se o aplicativo precisar acessar os dados de recursos binários fazendo chamadas subsequentes para LoadResource e, em seguida, para LockResource.

Para usar um recurso imediatamente, um aplicativo deve usar uma das seguintes funções específicas do recurso para localizar o recurso e converter os dados em uma forma mais utilizável.

Função Ação
FormatMessage Carrega e formata uma entrada de tabela de mensagens.
LoadAccelerators Carrega uma tabela de aceleradores.
Loadbitmap Carrega um recurso de bitmap.
Loadcursor Carrega um recurso de cursor.
Loadicon Carrega um recurso de ícone.
LoadMenu Carrega um recurso de menu.
Loadstring Carrega uma entrada de tabela de cadeia de caracteres.
 

Por exemplo, um aplicativo pode usar a função LoadIcon para carregar um ícone para exibição na tela. No entanto, o aplicativo deverá usar FindResourceEx e LoadResource se estiver carregando o ícone para copiar seus dados para outro aplicativo.

Os recursos de cadeia de caracteres são armazenados em seções de até 16 cadeias de caracteres por seção. As cadeias de caracteres em cada seção são armazenadas como uma sequência de cadeias de caracteres Unicode contadas (não necessariamente terminadas em nulo). A função LoadString extrairá o recurso de cadeia de caracteres de sua seção correspondente.

Exemplos

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

Requisitos

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

Confira também

Conceitual

Findresource

FormatMessage

IS_INTRESOURCE

LoadAccelerators

Loadbitmap

Loadcursor

Loadicon

LoadMenu

Loadresource

Loadstring

MAKELANGID

Outros recursos

Referência

Recursos