views:

191

answers:

2

In Visual Studio 2008, I can specify a message to be printed when a breakpoint is hit (by right-clicking the breakpoint and choosing 'When Hit...'). When the program is run, these messages appear in the Output Window. I would like to know, is there any way to redirect them to a file?

Specifying >file.txt as a command argument to the program does not work: this redirects the program's output, but not the debugger's.

(FWIW the behaviour I wish to achieve is to get the debugger to repeatedly print a variable's value to a file, rather than peppering my code with printf/cout statements.)

A: 

I don't know of a way to write the output window contents to a file short of writing a VS plugin, but you can highlight the text in the output window and copy it to the clipboard, then paste it into a text file.

dthorpe
+2  A: 

Under Windows 2000, XP, Server 2003 and Vista DebugView will capture:

  • Win32 OutputDebugString
  • Kernel-mode DbgPrint
  • All kernel-mode variants of DbgPrint implemented in Windows XP and Server 2003

DebugView allows you to filter the output, add time stamps and log to file.

The catch is, you need to run without attaching to the debugger, for DbgView to capture the output. (Use Ctrl+F5)

carleeto