Cómo depurar un programa de línea de comandos de C #

Estoy tratando de construir una herramienta de línea de comandos en C # con VS2010.

Mi pregunta es: ¿cómo puedo depurar esto, como si fuera un winforms?
Con winforms, puedo recorrer el código, ver los valores en cada paso individual, etc.

Aquí, sin embargo, el programa solo responde cuando le hablo desde la línea de comandos. No puedo iniciar una sesión de depuración, ya que eso primero iniciará completamente el programa. Y debido a la naturaleza del programa, se cerrará solo porque no había argumentos de línea de comandos.

Por lo tanto, no se puede realizar la depuración.

¿Qué necesito hacer aquí?

EDITAR: un ejemplo, ya que alguien hizo un comentario que me hace sentir que esta explicación es necesaria.

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

Ese es un ejemplo de cómo se aborda este programa. El comando, -help, se da en la misma línea en que se inicia el programa. En otras palabras, primero no puedo iniciar el programa y luego darle un comando mientras se está ejecutando ... porque ya no se ejecutará. Comenzará, verá que no tenía argumentos sobre el inicio, y debido a eso, se cerró. Así es como funciona una herramienta de línea de comandos.

ActivarProcesar posibles argumentosResultados de salidaApagar automáticamente

No es algo que siga funcionando hasta que hagas clic en la pequeña x en la esquina superior derecha.

Respuestas a la pregunta(6)

Su respuesta a la pregunta