/ / Démarrer le débogage sur le projet de démarrage C # en mode natif uniquement - c #, c ++, visual-studio, débogage

Commencez à déboguer sur le projet de démarrage C # en mode natif uniquement - c #, c ++, visual-studio, débogage

J'ai une solution MSVC2013 avec des projets C # (gérés) et C ++ (natifs). Un Le projet C # est défini comme démarrage projet. Je veux commencer ce projet avec le débogage, ce qui est généralement réalisé de manière simple en appuyant simplement sur F5.

Cependant, je veux démarrer le débogueur dans natif seulement mode (c.-à-d. pas de débogage géré). Je ne peux pas obtenir ce comportement en modifiant les paramètres du projet C #: il ne dispose que de l'option "Activer le débogage de code natif", qui permet d'activer ou de désactiver le débogage natif La seule méthode standard que je connaisse consiste à démarrer l'application sans débogage, puis à l'attacher à un processus en choisissant uniquement le débogage natif.

Y a-t-il un moyen d'automatiser ce processus? Idéalement, appuyer sur un bouton devrait suffire pour lancer le débogage en natif. Peut-être qu'une extension pourrait simplifier cette tâche.


P.S. J'ai rencontré un bogue méchant dans le débogage en mode mixte, qui casse complètement le débogage dans mon cas. Ce bug est lui-même ne pas le sujet de la question, cela explique simplement pourquoi le débogage en natif avec le projet de démarrage C # peut être utile (et m’est utile à moi personnellement).

Réponses:

5 pour la réponse № 1

Il n’est pas très clair pourquoi vous ne pouvez pas simplement utiliserProjet> Propriétés> onglet Débogage> cochez la case "Activer le débogage de code natif". Si vous utilisez VS2012 et ultérieurs, sachez que vous devez désactiver le nouveau moteur de débogage géré, celui-ci n'est plus compatible avec le code C ++ / CLI. Utilisez Outils> Options> Débogage> Général> cochez la case "Utiliser le mode de compatibilité géré".

Mais vous pouvez réaliser ce que vous voulez, il suffit de sélectionnerun des projets de code natif en tant que votre projet de démarrage. Cliquez avec le bouton droit de la souris sur> Définir comme projet de démarrage. Et vous devez sélectionner le fichier EXE de démarrage, cliquez avec le bouton droit de la souris sur> Propriétés> Débogage> Commande et remplacez-le par l'exécutable C #. Les points d'arrêt deviennent actifs (couleur rouge uni) dès que le code C # charge votre DLL.