views:

92

answers:

3

what is the difference between start Debugging and Start Without Debugging in Visual Studio while running a program ?

+3  A: 

The first option starts the program under the control of Visual Studio's debugger. The second option starts the program stand-alone. Some of the practical differences while debugging a process are:

  1. You can pause, resume, stop and restart the debugged process from Visual Studio.
  2. Breakpoints defined in the code will be active for a debugged process, and the debugger will pause the process and show a stack trace whenever the process hits one of them.
  3. You cannot exit Visual Studio without stopping the debugged process.
  4. When a debugged console process exits, it will display a termination message until you press a key. This allows you to inspect the output of a just-ended process without having the console window immediately disappear on you.
Marcelo Cantos
+1  A: 

The former attaches the debugger, the latter does not. You use the latter if you want to run in the same way an end user would.

Rob Windsor
A: 

the answer seems obvious, especially if you just try it :)

"Start without debugging" starts your app but doesn't attach visual studio as the debugger. "Start debugging" starts your app, with visual studio attached as the debugger.

tenfour