web-dev-qa-db-fra.com

Débogage avec des paramètres de ligne de commande dans Visual Studio

Je développe une application de ligne de commande C++ dans Visual Studio et je dois la déboguer avec des arguments de ligne de commande. Pour le moment, je viens d'exécuter le fichier EXE généré avec les arguments dont j'ai besoin (comme ceci program.exe -file.txt), mais de cette façon, je ne peux pas déboguer. Y a-t-il un endroit où je peux spécifier les arguments pour le débogage?

477
Maciej Gryka

Oui, cela se trouve dans la section Débogage de la page de propriétés du projet.

Dans VS depuis 2008: cliquez avec le bouton droit de la souris sur la project, choisissez properties, accédez à la section Debugging. Il y a un cadre pour "Command Arguments". (Astuce: pas solution, mais project)

708
Lou Franco

Le Mozilla.org FAQ sur le débogage de Mozilla sous Windows présente un intérêt ici.

En bref, le débogueur Visual Studio peut être appelé sur un programme à partir de la ligne de commande, ce qui permet de spécifier les arguments de la ligne de commande lors de l'appel d'un programme de ligne de commande, directement sur la ligne de commande.

Cela ressemble à ce qui suit pour Visual Studio 8 ou 9

 devenv/debugexe 'nom du programme' 'arguments du programme' 

Il est également possible d’avoir une action Explorer pour démarrer un programme dans le débogueur Visual Studio.

52
grrussel

Même si vous démarrez l'exécutable en dehors de Visual Studio, vous pouvez toujours utiliser la commande "Joindre" pour connecter Visual Studio à votre exécutable déjà en cours d'exécution. Cela peut être utile, par exemple. lorsque votre application est exécutée en tant que plug-in dans une autre application.

16
MSalters

Microsoft Visual Studio Ultima 2013.

Vous pouvez simplement aller dans le menu DEBUG → Propriétés principalesPropriétés de configurationDébogage et vous verrez alors la boîte pour les arguments de ligne de commande.

En fait, vous pouvez définir les mêmes arguments d'entrée pour toutes les configurations différentes et pas seulement pour le débogage.

Dans le menu déroulant de la configuration, sélectionnez: Toutes les configurations et insérez les arguments d'entrée (chaque argument séparé par un espace).

Maintenant, vous pouvez exécuter votre programme dans différents modes sans avoir à changer les arguments d'entrée à chaque fois.

6
jorge

Dans Visual Studio 2017 avec l'application de console principale .net, procédez comme suit:

Faites un clic droit sur la fenêtre Projet dans la solution, sélectionnez "Propriétés", puis cliquez sur Déboguer (à gauche), entrez les arguments dans le champ "Arguments de l'application".

Notez qu'ils doivent être séparés par des espaces.

2
Yahya Hussein

Cela peut aider certaines personnes qui ont encore des problèmes. J'utilise Visual Studio 2015 et je ne pouvais passer les arguments que lorsque je changeais la définition de argv.

Au lieu de

int main(int argc, char **argv){
}

Je devais utiliser

int main(int argc, char *argv[]){
}

Je ne sais pas pourquoi c'était nécessaire, mais ça marche.

2
Blubsiwubsi

Faites un clic droit sur la fenêtre Projet dans Solution du VS, sélectionnez "Débogage" (à gauche), entrez les arguments dans le champ "Arguments de la commande":

enter image description here

1
Andrushenko Alexander

Avec VS 2015 et les versions ultérieures, utilisez l'extension arguments de ligne de commande intelligente . Ce plug-in ajoute une fenêtre qui vous permet d'activer et de désactiver des arguments:

Smart Command Line Arguments interface

L'extension stocke en outre les arguments dans un fichier JSON, vous permettant de les valider pour le contrôle de source. En plus de vous assurer que vous n'avez pas à saisir tous les arguments à chaque fois, cela constitue un complément utile à votre documentation pour que les autres développeurs découvrent les options disponibles.

1
jpmc26

Dans Visual Studio 2010, cliquez avec le bouton droit sur le projet, choisissez Propriétés, cliquez sur la section des propriétés de configuration dans le volet gauche, puis sur Débogage, puis dans le volet droit, un cadre. pour les arguments de commande.

Dans cela entrez les arguments de ligne de commande. Tu es prêt. Maintenant, déboguez et voyez le résultat. Si vous êtes fatigué de modifier les propriétés, saisissez temporairement l'entrée directement dans le programme.

0
sAm