SatDLL, exemple : implémenter des ressources multilingues dans une application Win32
L'exemple SatDLL illustre un certain nombre d'aspects liés à la localisation et à la globalisation :
Comment mettre au point une solution qui génère un fichier EXE principal et des DLL satellites individuelles contenant les versions en différentes langues de l'interface utilisateur.
Méthode recommandée pour implémenter un mécanisme de chargement de DLL satellite avec langue de secours si la langue sélectionnée n'est pas disponible.
Code permettant de détecter la langue par défaut de l'interface utilisateur dans une version quelconque de Windows.
Comment changer de façon dynamique la langue de l'interface utilisateur à la suite d'une demande de modification de la part d'un utilisateur (la façon de rendre persistante la langue choisie par l'utilisateur pour l'interface utilisateur n'est pas illustrée).
Comment utiliser les fonctions de mappage pour l'encodage des caractères génériques afin de pouvoir générer des versions ANSI et Unicode d'une application à partir du même code source.
Note de sécurité |
---|
Cet exemple de code est destiné à illustrer un concept ; il présente uniquement le code qui se rapporte spécifiquement à ce concept. Il est possible qu'il ne réponde pas aux exigences de sécurité d'un environnement spécifique, et ne doit pas être utilisé exactement comme indiqué. Nous vous recommandons d'ajouter du code de sécurité et de gestion des erreurs afin de renforcer la sécurité et la fiabilité de vos projets. Microsoft fournit cet exemple de code « EN L'ÉTAT » sans aucune garantie. |
Pour obtenir des exemples et des instructions d'installation :
Pour accéder aux exemples de Visual Studio
Dans le menu Aide, cliquez sur Exemples.
Par défaut, ces exemples sont installés sous lecteur:\Program Files\Microsoft Visual Studio 10.0\Samples\.
- Pour obtenir la version la plus récente de cet exemple et la liste des autres exemples, consultez Exemples Visual Studio (page éventuellement en anglais) sur le site Web MSDN.
Génération et exécution de l'exemple
Pour générer et exécuter cet exemple
Ouvrez le fichier solution satdll.sln.
Dans le menu Générer, cliquez sur Générer la solution.
Dans le menu Déboguer, cliquez sur Exécuter sans débogage.
Dans la configuration par défaut, cette solution génère une application Unicode qui nécessite Windows 2000 ou version ultérieure avec installation de la prise en charge des langues d'Europe occidentale et du japonais afin d'afficher correctement tous les caractères de l'interface utilisateur.
En définissant "Utiliser le jeu de caractères multioctet (MBCS)" pour l'option Jeu de caractères des paramètres généraux du projet, il est possible de compiler l'exemple pour des plateformes Windows antérieures. Toutefois, vous pourrez uniquement basculer entre les langues prises en charge par la page de codes ANSI de cette version antérieure de Windows.
Notes
Lors du débogage de cet exemple, le répertoire actif est le répertoire de la solution et non le répertoire Debug.Pour cette raison, les répertoires des DLL satellites (1031, 1033 et 1041) sont créés dans le répertoire de la solution.Lorsque vous transmettez votre application à un utilisateur final, ces répertoires de DLL satellites doivent bien entendu être créés dans le répertoire où se trouve le fichier exécutable principal.
Mots clés
Cet exemple illustre l'utilisation des mots clés suivants :
LoadString ; LoadMenu ; LoadAccelerators ; LoadIcon ; LoadCursor ; DialogBox ; CreateFontIndirect ; DrawText ; InvalidateRect ; UpdateWindow ; DestroyMenu ; SetMenu ; DrawMenuBar ; GetLocaleInfo ; GetCurrentDirectory ; FindFirstFile ; FindNextFile ; LoadLibrary ; EnumResourceLanguages ; GetVersionInfoEx ; RegOpenKeyEx ; RegQueryValueEx ; RegCloseKey ; GetUserDefaultUILanguage ; GetUserDefaultLangID ; _tWinMain ; _tcscpy ; _tcsncpy ; _tcslen ; _tcsclen ; _tcscat ; _ttoi ; _itot
Voir aussi
Concepts
Ressources localisées dans des applications MFC : DLL satellites