Déboguer en mode mixte (C#, C++, Visual Basic)
Cet article décrit comment activer le débogage commun de code managé et de code natif, connu sous le nom de débogage en mode mixte. Il existe deux scénarios de débogage en mode mixte :
L’application qui appelle une DLL est écrite en code natif et la DLL est gérée.
L’application qui appelle une DLL est écrite en code managé et la DLL est en code natif. Pour obtenir un didacticiel qui vous guide dans ce scénario, consultez Déboguer du code managé et natif.
Vous pouvez activer les débogueurs managé et natif dans les pages Propriétés du projet d’application appelante. Les paramètres sont différents pour les applications natives et managées.
Si vous n’avez pas accès au projet d’une application appelante, vous pouvez déboguer la DLL à partir du projet DLL. Vous n’avez pas besoin du mode mixte pour déboguer. Le projet DLL suffit. Pour plus d'informations, consultez Procédure : déboguer un projet DLL.
Remarque
Les boîtes de dialogue et les commandes décrites dans cet article peuvent être différentes de celles qui s'affichent, en fonction de vos paramètres ou de l’édition de Visual Studio. Pour modifier vos paramètres, sélectionnez Outils>Importation et exportation de paramètres. Pour plus d’informations, consultez Réinitialiser tous les paramètres.
Activer le mode mixte pour une application d’appel native (C++)
Pour activer le débogage en mode mixte pour une application d'appel native C++, procédez comme suit :
Dans l’Explorateur de solutions Visual Studio, cliquez avec le bouton droit sur le projet C++, puis sélectionnez Propriétés, ou utilisez le raccourci clavier Alt+Entrée. La boîte de dialogue <Pages> de propriétés de Projet s’affiche.
Dans la boîte de dialogue, développez la section Propriétés de configuration, puis sélectionnez l'onglet Débogage.
Dans l’onglet Débogage, sélectionnez la propriété Type de débogueur et utilisez la liste déroulante pour sélectionner l’option Auto ou Mixte. S’il y a plusieurs options pour Mixte, comme .NET Core et .NET Framework, choisissez la meilleure pour votre configuration.
Pour appliquer les modifications de propriété, sélectionnez OK.
Activer le mode mixte pour une application d’appel managée (C# ou Visual Basic)
Pour activer le débogage en mode mixte pour une application d'appel managée en C# ou Visual Basic, procédez comme suit :
Dans l’Explorateur de solutions Visual Studio, cliquez avec le bouton droit sur le projet C# ou Visual Basic, puis sélectionnez Propriétés, ou utilisez le raccourci clavier Alt+Entrée. Le volet Propriétés s’ouvre.
Dans le volet Propriétés, activez le débogage en mode mixte en définissant la propriété suivante :
Code .NET
Dans le menu de gauche, sélectionnez Déboguer.
Dans la section Général, sélectionnez le lien Ouvrir l’interface utilisateur des profils de lancement de débogage. La boîte de dialogue Profils de lancement s'ouvre.
Dans la boîte de dialogue, faites défiler jusqu'à la section Activer le débogage du code natif.
Sélectionnez la propriété Activer le débogage commun de code managé et de code natif, également connu sous le nom de débogage en mode mixte :
Pour appliquer la modification de propriété, fermez la boîte de dialogue Profils de lancement et le volet Propriétés.
Code .NET Framework
Si vous utilisez du code .NET Framework, qui n’a pas de profil de lancement de débogage, procédez comme suit :
Dans le menu de gauche, sélectionnez Déboguer.
Dans la section Moteurs de débogage, sélectionnez la propriété Activer le débogage du code natif :
Pour appliquer la modification de propriété, fermez le volet Propriétés.
Dans le menu de gauche, sélectionnez Déboguer.
Dans la section Moteurs de débogage, sélectionnez la propriété Activer le débogage du code natif :
Pour appliquer la modification de propriété, fermez le volet Propriétés.
Remarque
Pour une application .NET Core dans Visual Studio 2017 et Visual Studio 2019, vous devez utiliser le fichier launchSettings.json au lieu des propriétés du projet pour activer le débogage en mode mixte.