Changes between Initial Version and Version 1 of Debugging With Visual Studio

Aug 5, 2010 9:00:21 AM (9 years ago)
Adam Roben



  • Debugging With Visual Studio

    v1 v1  
     1= Using the Microsoft and Safari Symbol Servers =
     2Follow the [ instructions for using the Microsoft and Safari symbol servers] so that Visual Studio can show you backtraces that involve closed-source components.
     4= Watch Window =
     5You can open any of the Watch windows using the `Debug > Windows > Watch` submenu.
     7[ MSDN Magazine] published a very useful [ article about Watch window pseudo-variables and format specifiers]. Those of particular interest to WebKit developers are mentioned explicitly below, but the whole article is worth a read.
     9Adding `$err,hr` to the Watch Window will show you what `::GetLastError()` would return at this moment, and will show you both the numerical error value and the error string associated with it.
     11= Immediate Window =
     12You can open the Immediate window using `Debug > Windows > Immediate` or `Ctrl+Alt+I`.
     14When debugging code that uses CF types, you can invoke the `CFShow` function in the Immediate window to print a debug description of a CF object to the Output Window like so:
     19= Debugging Multi-Process Applications =
     20You can attach a single debugger to more than one process. To do this, launch or attach to the first process, then use `Tools > Attach to Process…` or `Ctrl+Alt+P` to attach to the second process. Your breakpoints will apply to both processes.
     22There are two ways to see which process the debugger is currently operating on, and to switch the current process: the Processes window and the Debug Location toolbar. You can open the Processes window using `Debug > Windows > Processes` or `Ctrl+Shift+Alt+P`. You can show the Debug Location toolbar using `View > Toolbars > Debug Location`.
     24Visual Studio will always pauses all processes (i.e., you can't pause just one process). Similarly, Visual Studio will always step all processes when using the Step In/Over/Out commands.