Ich entwickle eine C++-Befehlszeilenanwendung in Visual Studio und muss sie mit Befehlszeilenargumenten debuggen. Im Moment führe ich einfach die generierte EXE-Datei mit den Argumenten aus, die ich brauche (wie diese program.exe -file.txt
), aber auf diese Weise kann ich nicht debuggen. Kann ich irgendwo die Argumente für das Debuggen angeben?
Debuggen mit Befehlszeilenparametern in Visual Studio
Maciej Gryka
Lou Franco
Ja, es ist in der Debuggen Abschnitt der Eigenschaftsseite des Projekts.
In Visual Studio seit 2008: Klicken Sie mit der rechten Maustaste auf die Projektwählen Eigenschaftengehen Sie zu Debuggen Abschnitt — es gibt ein Feld für “Befehlsargumente”. (Tipp: keine Lösung, sondern Projekt).
-
Stackoverflow ist die einzig brauchbare MS-Dokumentation!
– Martin Beckett
13. Januar 2011 um 16:41 Uhr
-
Seien Sie vorsichtig damit. Dadurch wird nicht die eigentliche Projektdatei geändert, sondern stattdessen die vcxproj.user-Datei.
– TheTrowser
13. Mai 2015 um 17:20 Uhr
-
Hinweis: Wenn Sie mehrere Projekte in einer Lösung haben, denken Sie daran, mit der rechten Maustaste auf das Projekt zu klicken, das Sie ausführen möchten, und “Als Startprojekt festlegen”.
– Löwe Lai
17. April 2017 um 7:51 Uhr
-
Genau richtig. Aber anscheinend heißt es in VS2017 nicht “Debugging”, sondern “Debug”. Wir werden vielleicht nie wissen, warum.
– OmarL
16. Oktober 2017 um 14:43 Uhr
-
Stellen Sie sicher, dass Sie in der Dropdown-Liste oben auf den Eigenschaftenseiten die richtige Konfiguration ausgewählt haben, dh dieselbe Konfiguration wie diejenige, die Sie ausführen möchten.
– Steve Smith
4. Januar 2018 um 14:51 Uhr
grussel
Die Mozilla.org FAQ zum Debuggen von Mozilla unter Windows interessiert hier.
Kurz gesagt, der Visual Studio-Debugger kann in einem Programm von der Befehlszeile aus aufgerufen werden, was es einem ermöglicht, die Befehlszeilenargumente beim Aufrufen eines Befehlszeilenprogramms direkt in der Befehlszeile anzugeben.
Dies sieht für Visual Studio 8 oder 9 (Visual Studio 2005 bzw. Visual Studio 2008) wie folgt aus:
devenv /debugexe 'program name' 'program arguments'
Es ist auch möglich, eine zu haben Explorer-Aktion um ein Programm im Visual Studio-Debugger zu starten.
MSalter
Selbst wenn Sie die ausführbare Datei außerhalb von Visual Studio starten, können Sie immer noch den Befehl „Attach“ verwenden, um Visual Studio mit Ihrer bereits ausgeführten ausführbaren Datei zu verbinden. Dies kann z. B. nützlich sein, wenn Ihre Anwendung als Plug-in in einer anderen Anwendung ausgeführt wird.
-
Ja, mit anhängen
Ctrl+Alt+P
(oder klicken Sie auf „Debuggen“ > „An Prozess anhängen…“). Aber das beantwortet die OP-Frage nicht wirklich;)– T_D
10. Januar 2017 um 12:51 Uhr
Jörg
Microsoft Visual Studio Ultima 2013.
Sie können einfach zum DEBUG-Menü gehen → Haupteigenschaften → Konfigurationseigenschaften → Debuggen und dann sehen Sie das Feld für die Befehlszeilenargumente.
Tatsächlich können Sie dieselben Eingabeargumente für alle verschiedenen Konfigurationen festlegen und nicht nur zum Debuggen.
Wählen Sie aus dem Pulldown-Menü der Konfiguration: Alle Konfigurationen und fügen Sie die Eingabeargumente ein (jedes Argument durch Leerzeichen getrennt).
Jetzt können Sie Ihr Programm in verschiedenen Modi ausführen, ohne jedes Mal die Eingabeargumente ändern zu müssen.
jpmc26
Verwenden Sie mit VS 2015 und höher die Intelligente Befehlszeilenargumente Verlängerung. Dieses Plug-in fügt ein Fenster hinzu, in dem Sie Argumente ein- und ausschalten können:
Die Erweiterung speichert die Argumente zusätzlich in einer JSON-Datei, sodass Sie sie der Quellcodeverwaltung übergeben können. Dies stellt nicht nur sicher, dass Sie nicht jedes Mal alle Argumente eingeben müssen, sondern dient auch als nützliche Ergänzung zu Ihrer Dokumentation, damit andere Entwickler die verfügbaren Optionen entdecken können.
Peter Mortensen
In Visual Studio 2017 mit a .NET Core Konsolenanwendung Folgendes tun:
Klicken Sie mit der rechten Maustaste auf das Projekt in der Lösung Fenster, wählen Sie “Eigenschaften”, Debuggen (auf der linken Seite) und geben Sie die Argumente in das Feld ein “Bewerbungsargumente”.
Beachten Sie, dass sie durch Leerzeichen getrennt sein sollten.
O’Neil
Dies kann einigen Menschen helfen, die immer noch Probleme haben. Ich verwende Visual Studio 2015 und konnte die Argumente nur übergeben, wenn ich die Definition von geändert habe argv
.
Anstatt
int main(int argc, char **argv){
}
musste ich benutzen
int main(int argc, char *argv[]){
}
Ich weiß nicht, warum es notwendig war, aber es funktioniert.
-
Hatte das gleiche Problem, aber beide oben genannten Deklarationen haben nicht funktioniert. Die Lösung bestand darin, die Plattform von x86 auf x64 zu ändern, da ich auf einem 64-Bit-Computer arbeite.
– hfrmobil
6. März 2020 um 8:18 Uhr
Zugehöriger Beitrag – Übergeben von Befehlszeilenparametern mit Visual Studio C#
– RBT
24. Mai 2018 um 10:06 Uhr