FindResource

La funzione FindResource determina la posizione di una risorsa con il tipo specificato e il nome nel modulo specificato.

(HRSRC FindResource HMODULE  hModule, / / handle del moduloLPCTSTRlpName, / / puntatore a nome della risorsaLPCTSTRlpType / / tipo di puntatore a risorsa);
 

Parametri

hModule
Gestire al modulo cui file eseguibile contiene la risorsa.

Consente di specificare un valore NULL l'handle del modulo associato al file di immagine che il sistema operativo utilizzato per creare il processo corrente.

lpName
Specifica il nome della risorsa. Per ulteriori informazioni, vedere la sezione Osservazioni.
lpType
Specifica il tipo di risorsa. Per ulteriori informazioni, vedere la sezione Osservazioni. Per i tipi di risorsa standard, questo parametro può essere uno dei seguenti valori:
Valore Significato
RT_ACCELERATOR Tabella Accelerator
RT_ANICURSOR Cursore animato
RT_ANIICON Icona animata
RT_BITMAP Risorsa bitmap
RT_CURSOR Risorse dipendenti dall'hardware cursor
RT_DIALOG Nella finestra di dialogo
RT_FONT Risorsa di tipo di carattere
RT_FONTDIR Risorse di carattere directory
RT_GROUP_CURSOR Risorsa indipendente dall'hardware cursor
RT_GROUP_ICON Risorsa indipendente dall'hardware icona
RT_HTML Documento HTML
RT_ICON Risorsa icona dipendenti dall'hardware
RT_MENU Risorsa di menu
RT_MESSAGETABLE Voce della tabella messaggio
RT_RCDATA Dall'applicazione risorse (dati grezzi)
RT_STRING Voce della tabella stringa
RT_VERSION Risorsa versione

Valori restituiti

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 di errore estese, chiamare GetLastError.

Osservazioni

Se la parola di ordine superiore del parametro lpName o lpType è zero, la parola significativi specifica l'identificatore di numero intero del nome o del tipo di risorsa specificata. In caso contrario, tali parametri sono puntatori a lunghi in 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 del valore integer di tipo o il nome della risorsa. Ad esempio, la stringa "# 258" rappresenta l'identificatore del valore integer 258.

Un'applicazione dovrebbe ridurre la quantità di memoria necessaria per le risorse, facendo riferimento alla loro dall'identificatore di numero intero anziché per nome.

Quando si è terminato di utilizzare una tabella di acceleratore, bitmap, cursore, icona o dal menu, si può rilasciare la memoria associata chiamando una delle funzioni nella tabella seguente.

Risorsa Funzione di rilascio
Tabella Accelerator DestroyAcceleratorTable
Bitmap DeleteObject
Cursore DestroyCursor
Icona DestroyIcon
Dal menu DestroyMenu

Il sistema elimina automaticamente queste risorse quando termina il processo che li ha creati, tuttavia, chiamando la funzione appropriata conserva la memoria e riduce le dimensioni del set di lavoro del processo.

Un'applicazione può utilizzare FindResource per trovare qualsiasi tipo di risorsa, ma questa funzione deve essere utilizzata solo se l'applicazione deve accedere ai dati di risorse binari quando si effettuano le chiamate successive a LoadLibrary e LockResource.

Per utilizzare una risorsa immediatamente, un'applicazione deve utilizzare una delle seguenti funzioni specifiche della risorsa per trovare e caricare le risorse in una sola chiamata:

Funzione Azione
FormatMessage Carica e formatta una voce della tabella dei messaggi.
LoadAccelerators Carica una tabella accelerator.
LoadBitmap Carica una risorsa bitmap.
LoadCursor Carica una risorsa del cursore.
LoadIcon Carica una risorsa icona.
LoadMenu Carica una risorsa dal menu.
LoadString Carica una voce della tabella delle stringhe.

Ad esempio, un'applicazione può utilizzare la funzione LoadIcon per caricare un'icona per visualizzare sullo schermo. Tuttavia, l'applicazione deve utilizzare FindResource e LoadResource se sta caricando l'icona per copiare i dati di un'altra applicazione.

Risorse di tipo stringa vengono memorizzate nelle sezioni di fino a 16 stringhe per sezione. Le stringhe in ogni sezione sono memorizzate come una sequenza di stringhe Unicode (non con terminazione null) conteggiati. La funzione LoadString estrarrà la risorsa di tipo stringa dalla sezione corrispondente.

Windows CE: Il parametro hModule non può essere un handle NULL.

Il parametro lpName non supporta l'ID di risorsa zero — cioè, FindResource (h, 0, t) non funziona come previsto.

Lei non può passare i valori RT_ANICURSOR o RT_ANIICON nel parametro lpType .

Descrizione

nbsp; Windows &NT: richiede 3.1 o versione successiva.
Windows:Richiede Windows 95 o versioni successive.
Windows CE:Richiede la versione 1.0 o successiva.
Intestazione:Dichiarati in Winbase.
Importare librerie:Utilizzare il kernel.
Unicode:Implementato come versioni Unicode e ANSI in Windows e Windows NT.

Vedi anche

Panoramica delle risorse, le funzioni delle risorse, FindResourceEx, FormatMessage, LoadAccelerators, LoadBitmap, LoadCursor, LoadIcon, LoadMenu, LoadResource, LoadString, LockResource, SizeofResource

Rimedio: Inserire il CD-ROM CD di MSDN Library.

Index