Partager via


Fonction FindResourceW (libloaderapi.h)

Détermine l’emplacement d’une ressource avec le type et le nom spécifiés dans le module spécifié.

Pour spécifier une langue, utilisez la fonction FindResourceEx .

Syntaxe

HRSRC FindResourceW(
  [in, optional] HMODULE hModule,
  [in]           LPCWSTR lpName,
  [in]           LPCWSTR lpType
);

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] 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] 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 les types de ressources standard, consultez Types de ressources. Pour plus d’informations, consultez la section Remarques ci-dessous.

Valeur retournée

Type : HRSRC

Si la fonction réussit, la valeur de retour est un handle pour le 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 = lpName ou lpType, x spécifie l’identificateur entier du nom ou du type 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 dièse (#), 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 d’entier plutôt que par nom.

Une application peut utiliser FindResource pour rechercher n’importe quel type de ressource, mais cette fonction doit être utilisée uniquement si l’application doit accéder aux données de ressource 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 à la ressource suivantes pour rechercher la ressource et convertir les données dans une forme plus utilisable.

Fonction Action
FormatMessage Charge et met en forme une entrée de table de messages.
LoadAccelerators Charge une table d’accélérateurs.
LoadBitmap Charge une ressource bitmap.
LoadCursor Charge une ressource de curseur.
LoadIcon Charge une ressource 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 FindResource et LoadResource si elle charge l’icône pour copier ses données vers une autre application.

Les ressources de chaîne sont stockées dans des sections allant jusqu’à 16 chaînes 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 un caractère Null). La fonction LoadString extrait la ressource de chaîne de sa section correspondante.

Exemples

Pour obtenir un exemple, consultez Mise à jour des 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 libloaderapi.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

Conceptuel

FindResourceEx
FormatMessage
IS_INTRESOURCE
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadResource
LoadString
LockResource

Autres ressources

Référence

Ressources
SizeofResource