Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Visual Studio 2013 Simplifies Windows Store Apps Development with Improved Exception Reporting

Visual Studio 2013 Simplifies Windows Store Apps Development with Improved Exception Reporting

This item in japanese

Windows 8.1 and Visual Studio 2013 ships with improved exception reporting, which enables native C++ based Windows Store App developers to easily identify and fix errors. While Windows 8.1 adds support for capturing stack traces for exceptions as they are reported in Windows Runtime components, Visual Studio 2013 debugger provides an ability to display captured stack traces on exception objects that are derived from Platform::Exception.

In order to work with the above mentioned feature, you need to start the debugger, put a breakpoint in the catch block and select Throw Handled button in the main application page. The debugger catches all possible exceptions that is thrown inside the ThrowDataReaderError method.

Visual Studio 2013 displays the additional stack trace information for COM exception raised during the development of apps inside a dialog. It displays the stack trace iside the [External Code] frame, which indicate the activation of Just My Code, which is the new native debugging feature.

The dialog also includes a new link labeled Add exception stack trace to watch which adds the new $exceptionstack pseudovariable to the watch window. Moreover, Visual Studio 2013 displays additional stack track data inside the watch window in addition to an ability to view the stack frames for the exception with the help of Go to Source Code option in the context menu.

Visual Studio 2013 enables you to add the $exceptionstack variable to the watch window to see the last captured stack. Moreover, _M_disassembleMe is replaced with _M_stackTrace which adds the full stack trace information for the task creation stack thus enabling you to easily navigate to source code for a frame listed in the creation stack.

Rate this Article