Partager via


Comment : compiler le code MFC et ATL avec /clr

Mise à jour : novembre 2007

Cette rubrique explique comment compiler des programmes MFC et ATL existants pour cibler le Common Language Runtime.

Compiler un MFC exécutable ou une DLL normale avec /clr

  1. Ouvrez la boîte de dialogue Propriétés du projet en cliquant avec le bouton droit sur le projet dans l'Explorateur de solutions et en sélectionnant Propriétés.

  2. Développez le nœud à côté de Propriétés de configuration et sélectionnez Général. Dans le volet droit, sous Paramètres par défaut du projet, affectez à Prise en charge du Common Language Runtime la valeur Common Language Runtime Support (/clr).

    Dans le même volet, vérifiez que Utilisation des MFC a la valeur Utiliser les MFC dans une DLL partagée.

  3. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Vérifiez que Format des informations de débogage a la valeur Base de données du programme /Zi (et non /ZI).

  4. Sous Propriétés de configuration, sélectionnez C/C++, puis Génération de code. Vérifiez que Bibliothèque Runtime a la valeur DLL de débogage multithread (/MDd) ou DLL multithread (/MD).

Compiler une DLL d'extension MFC avec /clr

  1. Suivez les étapes de la section ci-dessus « Compiler un MFC exécutable ou une DLL normale avec /clr ».

  2. Effectuez l'une des actions suivantes :

    1. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez En-têtes précompilés. Attribuez à Création/utilisation d'un en-tête précompilé la valeur Sans utiliser les en-têtes précompilés.

    2. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le fichier stdafx.cpp et sélectionnez Propriétés. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Affectez à Compilation avec prise en charge du Common Language Runtime la valeur Pas de prise en charge du Common Language Runtime.

  3. Pour le fichier qui contient DllMain et tout ce qu'elle peut appeler, ouvrez les Pages de propriétés de ce fichier en cliquant avec le bouton droit sur le fichier dans l'Explorateur de solutions et en sélectionnant Propriétés. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Dans le volet droit, sous Paramètres par défaut du projet, affectez à Compilation avec prise en charge du Common Language Runtime la valeur Pas de prise en charge du Common Language Runtime Support.

Compiler un exécutable ATL avec /clr

  1. Ouvrez la boîte de dialogue Propriétés du projet en cliquant avec le bouton droit sur le projet dans l'Explorateur de solutions et en sélectionnant Propriétés.

  2. Développez le nœud à côté de Propriétés de configuration et sélectionnez Général. Dans le volet droit, sous Paramètres par défaut du projet, affectez à Prise en charge du Common Language Runtime la valeur Common Language Runtime Support (/clr).

  3. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Vérifiez que Format des informations de débogage a la valeur Base de données du programme /Zi (et non /ZI).

  4. Sous Propriétés de configuration, sélectionnez C/C++, puis Génération de code. Vérifiez que Bibliothèque Runtime a la valeur DLL de débogage multithread (/MDd) ou DLL multithread (/MD).

  5. Pour chaque fichier MIDL généré (fichiers C), cliquez avec le bouton droit sur le fichier dans l'Explorateur de solutions et sélectionnez Propriétés. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Affectez à Compilation avec prise en charge du Common Language Runtime la valeur Pas de prise en charge du Common Language Runtime.

Compiler une DLL ATL avec /clr

  1. Suivez les étapes de la section ci-dessus « Compiler un exécutable ATL avec /clr ».

  2. Effectuez l'une des actions suivantes :

    1. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez En-têtes précompilés. Attribuez à Création/utilisation d'un en-tête précompilé la valeur Sans utiliser les en-têtes précompilés.

    2. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le fichier stdafx.cpp et sélectionnez Propriétés. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Affectez à Compilation avec prise en charge du Common Language Runtime la valeur Pas de prise en charge du Common Language Runtime.

  3. Pour le fichier qui contient DllMain et tout ce qu'elle peut appeler, ouvrez les Pages de propriétés de ce fichier en cliquant avec le bouton droit sur le fichier dans l'Explorateur de solutions et en sélectionnant Propriétés. Sous Propriétés de configuration, développez le nœud à côté de C/C++ et sélectionnez Général. Dans le volet droit, sous Paramètres par défaut du projet, affectez à Compilation avec prise en charge du Common Language Runtime la valeur Pas de prise en charge du Common Language Runtime Support.

Voir aussi

Concepts

Assemblys mixtes (natif et managé)