Partager via


Fonction EnumResourceLanguagesA (winbase.h)

Énumère les ressources spécifiques au langage, du type et du nom spécifiés, associées à un module binaire.

Syntaxe

BOOL EnumResourceLanguagesA(
  [in] HMODULE          hModule,
  [in] LPCSTR           lpType,
  [in] LPCSTR           lpName,
  [in] ENUMRESLANGPROCA lpEnumFunc,
  [in] LONG_PTR         lParam
);

Paramètres

[in] hModule

Type : HMODULE

Handle vers un module à rechercher. À compter de Windows Vista, s’il s’agit d’un exécutable portable neutre en langage (fichier LN), les fichiers .mui appropriés (le cas échéant) sont inclus dans la recherche. S’il s’agit d’un fichier .mui spécifique, seul ce fichier est recherché pour les ressources.

Si ce paramètre est null, cela équivaut à passer un handle au module utilisé pour créer le processus actuel.

[in] lpType

Type : LPCTSTR

Type de ressource pour lequel la langue est énumérée. Sinon, plutôt qu’un pointeur, ce paramètre peut être MAKEINTRESOURCE(ID), où ID est une valeur entière représentant un type de ressource prédéfini. Pour obtenir la liste des types de ressources prédéfinis, consultez types de ressources. Pour plus d’informations, consultez la section Remarques ci-dessous.

[in] lpName

Type : LPCTSTR

Nom de la ressource pour laquelle la langue est énumérée. Sinon, au lieu d’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] lpEnumFunc

Type : ENUMRESLANGPROC

Pointeur vers la fonction de rappel à appeler pour chaque langage de ressource énuméré. Pour plus d’informations, consultez EnumResLangProcA.

[in] lParam

Type : LONG_PTR

Valeur définie par l’application passée à la fonction de rappel. Ce paramètre peut être utilisé dans la vérification des erreurs.

Valeur de retour

Type : BOOL

Retourne TRUE si elle réussit ou FALSE sinon. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Si IS_INTRESOURCE(lpType) est TRUE, lpType spécifie l’identificateur entier du type de ressource donné. Sinon, il s’agit d’un pointeur vers une chaîne terminée 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 type de ressource. Par exemple, la chaîne « #258 » représente l’identificateur 258.

De même, si IS_INTRESOURCE(lpName) est TRUE, lpName spécifie l’identificateur entier de la ressource donnée. Sinon, il s’agit d’un pointeur vers une chaîne terminée 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 de la ressource.

À compter de Windows Vista, le module binaire est généralement un exécutable portable neutre en langage (fichier LN), et l’énumération inclut également les ressources des fichiers de ressources spécifiques au langage correspondants (fichiers.mui) qui contiennent des ressources linguistiques localisables.

Pour chaque ressource trouvée, EnumResourceLanguages appelle une fonction de rappel définie par l’application lpEnumFunc, en passant l’identificateur de langue (voir Identificateurs de langue) de la langue pour laquelle une ressource a été trouvée, ainsi que les différents autres paramètres passés à EnumResourceLanguages.

Les applications peuvent également appeler EnumResourceLanguagesEx, qui fournit un contrôle plus précis des ressources énumérées.

La fonction EnumResourceLanguages continue d’énumérer les langues de ressources jusqu’à ce que la fonction de rappel retourne FALSE ou toutes les langues de ressources ont été énumérées.

Dans Windows Vista et versions ultérieures, si hModule spécifie un fichier LN, les ressources énumérées peuvent résider dans le fichier LN ou dans un fichier .mui associé à celui-ci. Si aucun fichier .mui n’est trouvé, seules les ressources du fichier LN sont retournées. Contrairement à EnumResourceNames et EnumResourceTypes, cette recherche examine plusieurs fichiers .mui. L’énumération commence par les fichiers .mui dans les dossiers associés à EnumUILanguages. Ces fichiers sont suivis de tous les autres fichiers .mui dont les chemins sont conformes au schéma décrit à gestion des ressources MUI. Enfin, le fichier désigné par hModule est également recherché.

L’énumération n’inclut jamais de doublons : si une ressource portant le même nom, le même type et la langue sont contenues dans le fichier LN et dans un fichier .mui, la ressource ne sera énumérée qu’une seule fois.

Exemples

Pour obtenir un exemple, consultez Création d’une liste de ressources.

Note

L’en-tête winbase.h définit EnumResourceLanguages comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winbase.h (inclure Windows.h)
bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

conceptuelle

EnumResLangProc

EnumResourceLanguagesEx

EnumResourceNames

EnumResourceTypes

de référence

Ressources