Condividi tramite


Funzione FindResourceExW (libloaderapi.h)

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

Sintassi

HRSRC FindResourceExW(
  [in, optional] HMODULE hModule,
  [in]           LPCWSTR lpType,
  [in]           LPCWSTR lpName,
  [in]           WORD    wLanguage
);

Parametri

[in, optional] hModule

Tipo: HMODULE

Handle del 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 integer del tipo di risorsa specificato. 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 ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni:

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 Action
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 di stringhe.

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 sta caricando 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 conteggiate (non necessariamente con terminazione Null). La funzione LoadString estrae la risorsa stringa dalla sezione corrispondente.

Requisiti

Requisito Value
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Header libloaderapi.h (include Windows.h)
Library kernel32. Movimento di liberazione
DLL Kernel32.dll

Vedere anche

FindResource
FormatMessage
IS_INTRESOURCE
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadResource
LoadString
MAKELANGID

altre risorse

Riferimento
Risorse