How to debug a C# command-line program

Viewed 26459

I'm trying to build a command-line tool in C# with VS2010.

My question is: how do I debug this, like I would a winforms.
With winforms, I can step through the code, see the values at each individual step, etc...

Here however, the program only responds when I talk to it from the command line. I can't start a debug session, since that will first fully start the program. And due to the nature of the program, it will shut itself because there were no command-line arguments.

So no debugging can occur.

What do I need to do here?

EDIT: an example, since someone made a comment that makes me feel this explanation is needed.

C:\Path\To\File\file.exe -help

That is an example of how this program is adressed. The command, -help, is given in the same line that the program is started. In other words, I cannot first start the program, and then give it a command while it's running... because it won't be running anymore. It'll start, see that it had no arguments on startup, and because of that, shut down. That's how a command-line tool works.

  1. Activate
  2. Process possible arguments
  3. Output results
  4. Shut down automatically

It is not something that keeps running till you click the little x in the top right corner.

6 Answers
Related