Fonction FindResourceExA (winbase.h)
Détermine l’emplacement de la ressource avec le type, le nom et la langue spécifiés dans le module spécifié.
Syntaxe
HRSRC FindResourceExA(
[in, optional] HMODULE hModule,
[in] LPCSTR lpType,
[in] LPCSTR lpName,
[in] WORD wLanguage
);
Paramètres
[in, optional] hModule
Type : HMODULE
Handle du module dont le fichier exécutable portable ou un fichier MUI associé contient la ressource. Si ce paramètre a la valeur NULL, la fonction recherche le module utilisé pour créer le processus actuel.
[in] lpType
Type : LPCTSTR
Type de ressource. Sinon, plutôt qu’un pointeur, ce paramètre peut être MAKEINTRESOURCE(ID), où ID est l’identificateur entier du donné
type de ressource. Pour connaître les types de ressources standard, consultez Types de ressources. Pour plus d’informations, consultez la section Remarques ci-dessous.
[in] lpName
Type : LPCTSTR
Nom de la ressource. Sinon, plutôt qu’un pointeur, ce paramètre peut être MAKEINTRESOURCE(ID), où ID est l’identificateur entier de la ressource. Pour plus d’informations, consultez la section Remarques ci-dessous.
[in] wLanguage
Type : WORD
Langue de la ressource. Si ce paramètre est MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL)
, la langue actuelle associée au thread appelant est utilisée.
Pour spécifier une langue autre que la langue actuelle, utilisez la macro MAKELANGID pour créer ce paramètre. Pour plus d’informations, consultez MAKELANGID.
Valeur retournée
Type : HRSRC
Si la fonction réussit, la valeur de retour est un handle du bloc d’informations de la ressource spécifiée. Pour obtenir un handle à la ressource, transmettez ce handle à la fonction LoadResource .
Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
Si IS_INTRESOURCE a la valeur TRUE pour x = lpType ou lpName, x spécifie l’identificateur entier du type ou du nom de la ressource donnée. Sinon, ces paramètres sont des pointeurs longs vers des chaînes terminées par null. Si le premier caractère de la chaîne est un signe de livre (#), les caractères restants représentent un nombre décimal qui spécifie l’identificateur entier du nom ou du type de la ressource. Par exemple, la chaîne « #258 » représente l’identificateur entier 258.
Pour réduire la quantité de mémoire requise pour une ressource, une application doit y faire référence par identificateur entier plutôt que par nom.
Une application peut utiliser FindResourceEx pour rechercher n’importe quel type de ressource, mais cette fonction ne doit être utilisée que si l’application doit accéder aux données de ressources binaires en effectuant des appels ultérieurs à LoadResource , puis à LockResource.
Pour utiliser une ressource immédiatement, une application doit utiliser l’une des fonctions spécifiques aux ressources suivantes pour rechercher la ressource et convertir les données dans un formulaire plus utilisable.
Fonction | Action |
---|---|
FormatMessage | Charge et met en forme une entrée de table de messages. |
LoadAccelerators | Charge une table d’accélérateur. |
LoadBitmap | Charge une ressource bitmap. |
LoadCursor | Charge une ressource de curseur. |
LoadIcon | Charge une ressource d’icône. |
LoadMenu | Charge une ressource de menu. |
LoadString | Charge une entrée de table de chaînes. |
Par exemple, une application peut utiliser la fonction LoadIcon pour charger une icône à afficher à l’écran. Toutefois, l’application doit utiliser FindResourceEx et LoadResource si elle charge l’icône pour copier ses données dans une autre application.
Les ressources de chaîne sont stockées dans des sections de 16 chaînes maximum par section. Les chaînes de chaque section sont stockées sous la forme d’une séquence de chaînes Unicode comptées (pas nécessairement terminées par null). La fonction LoadString extrait la ressource de chaîne de sa section correspondante.
Exemples
Pour obtenir un exemple, consultez Création d’une liste de ressources.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winbase.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |
Voir aussi
Conceptuel
Autres ressources
Référence