Spécifications pour la génération des contrôles communs Windows Vista
La version 6.1 des contrôles communs Windows pris en charge dans la bibliothèque Microsoft Foundation Class (MFC). Les contrôles communs sont inclus dans Windows Vista et la bibliothèque est incluse dans Kit de développement logiciel Visual Studio. La bibliothèque fournit de nouvelles méthodes qui améliorent les classes existantes, et les nouvelles classes et méthodes qui prennent en charge les contrôles communs Windows Vista. Lorsque vous créez votre application, vous devez respecter les exigences de compilation et de migration décrites dans les sections suivantes.
Spécifications de compilation
Versions prises en charge
Certaines nouvelles classes et méthodes ne prennent en charge que Windows Vista et ses versions ultérieures, alors que d'autres méthodes prennent également en charge les systèmes d'exploitation antérieurs. Une remarque dans la section de Requirements de chaque rubrique de la méthode spécifie si le système d'exploitation requis minimal est Windows Vista.
Même si votre ordinateur n'est pas Windows Vista, vous pouvez créer une application MFC pour les autres Windows Vista si vous avez les fichiers d'en-tête de MFC de la version 6.1 sur votre ordinateur. Toutefois, les contrôles communs conçus spécifiquement pour Windows Vista ne fonctionnent par sur ce système, et sont ignorés par les systèmes d'exploitation antérieurs.
Jeux de caractères pris en charge
Les nouveaux contrôles communs Windows ne prennent en charge que le jeu de caractères Unicode, et non le jeu de caractères ANSI. Si vous créez votre application sur la ligne de commande, utilisez les deux options suivantes définies (/D) du compilateur de la spécification Unicode en tant que jeu de caractères sous-jacent :
/D_UNICODE /DUNICODE
Si vous générez l'application dans l'environnement de développement intégré (IDE) Visual Studio, spécifiez l'option Jeu de caractères Unicode de la propriété Jeu de caractères dans le nœud Général des propriétés du projet.
La version ANSI de plusieurs méthodes MFC ont été déconseillées à compter de la version 6.1 des contrôles communs Windows. Pour plus d'informations, consultez API déconseillées ANSI.
Spécifications de migration
Si vous utilisez l'IDE de Visual Studio pour créer une application MFC qui utilise la version 6.1 des contrôles communs Windows, l'IDE déclare automatiquement un manifeste approprié. Toutefois, si vous migrez une application existante de MFC depuis une version antérieure de Visual Studio et que voulez utiliser les nouveaux contrôles communs, l'IDE ne fournit pas automatiquement les informations manifestes pour mettre à niveau votre application. Au lieu de cela, vous devez manuellement insérer le code ci-dessous dans votre fichier stdafx.h :
#ifdef UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif