Condividi tramite


Funzione FindResourceExA (winbase.h)

Determina la posizione della risorsa con il tipo, il nome e la lingua specificati nel modulo specificato.

Sintassi

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

Parametri

[in, optional] hModule

Tipo: HMODULE

Handle per il modulo il cui file eseguibile portabile o un file MUI adiacente contiene la risorsa. Se questo parametro è NULL, la funzione cerca nel modulo usato per creare il processo corrente.

[in] lpType

Tipo: LPCTSTR

Tipo di risorsa. In alternativa, anziché un puntatore, questo parametro può essere MAKEINTRESOURCE(ID), dove ID è l'identificatore intero dell'oggetto specificato

tipo di risorsa. Per i tipi di risorse standard, vedere Tipi di risorse. Per altre informazioni, vedere la sezione Osservazioni di seguito.

[in] lpName

Tipo: LPCTSTR

Nome della risorsa. In alternativa, anziché un puntatore, questo parametro può essere MAKEINTRESOURCE(ID), dove ID è l'identificatore integer della risorsa. Per altre informazioni, vedere la sezione Osservazioni di seguito.

[in] wLanguage

Tipo: WORD

Lingua della risorsa. Se questo parametro è MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL), viene utilizzata la lingua corrente associata al thread chiamante.

Per specificare una lingua diversa dalla lingua corrente, utilizzare la macro MAKELANGID per creare questo parametro. Per altre informazioni, vedere MAKELANGID.

Valore restituito

Tipo: HRRC

Se la funzione ha esito positivo, il valore restituito è un handle per il blocco di informazioni della risorsa specificata. Per ottenere un handle per la risorsa, passare questo handle alla funzione LoadResource .

Se la funzione ha esito negativo, il valore restituito è NULL. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Se IS_INTRESOURCE è TRUE per x = lpType o lpName, x specifica l'identificatore integer del tipo o del nome della risorsa specificata. In caso contrario, tali parametri sono puntatori lunghi a stringhe con terminazione Null. Se il primo carattere della stringa è un segno di cancelletto (#), i caratteri rimanenti rappresentano un numero decimale che specifica l'identificatore intero del nome o del tipo della risorsa. Ad esempio, la stringa "#258" rappresenta l'identificatore intero 258.

Per ridurre la quantità di memoria necessaria per una risorsa, un'applicazione deve farvi riferimento in base all'identificatore integer anziché al nome.

Un'applicazione può usare FindResourceEx per trovare qualsiasi tipo di risorsa, ma questa funzione deve essere usata solo se l'applicazione deve accedere ai dati delle risorse binarie effettuando chiamate successive a LoadResource e quindi a LockResource.

Per usare immediatamente una risorsa, un'applicazione deve usare una delle funzioni specifiche delle risorse seguenti per trovare la risorsa e convertire i dati in un formato più utilizzabile.

Funzione Azione
FormatMessage Carica e formatta una voce di tabella messaggi.
LoadAccelerators Carica una tabella di tasti di scelta rapida.
LoadBitmap Carica una risorsa bitmap.
LoadCursor Carica una risorsa cursore.
LoadIcon Carica una risorsa icona.
LoadMenu Carica una risorsa di menu.
LoadString Carica una voce di tabella stringa.
 

Ad esempio, un'applicazione può usare la funzione LoadIcon per caricare un'icona per la visualizzazione sullo schermo. Tuttavia, l'applicazione deve usare FindResourceEx e LoadResource se carica l'icona per copiare i dati in un'altra applicazione.

Le risorse stringa vengono archiviate in sezioni di un massimo di 16 stringhe per sezione. Le stringhe in ogni sezione vengono archiviate come sequenza di stringhe Unicode con terminazione null (non necessariamente null). La funzione LoadString estrae la risorsa stringa dalla sezione corrispondente.

Esempio

Per un esempio, vedere Creazione di un elenco di risorse.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbase.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Informazioni concettuali

Findresource

FormatMessage

IS_INTRESOURCE

LoadAccelerators

LoadBitmap

LoadCursor

LoadIcon

LoadMenu

LoadResource

LoadString

MAKELANGID

Altre risorse

Riferimento

Risorse