Debugging Unresponsive Surface Applications

Surface Shell can detect when a Microsoft Surface application's user interface has become unresponsive. By default, when Surface Shell finds an application that is unresponsive, Surface Shell stops the application and then tries to restart it.

If you have prepared to collect debug dumps in Surface mode, complete the following procedure to debug unresponsive applications.

Collecting Debug Dumps from an Unresponsive Managed Application

Instead of stopping an application that is unresponsive, you can configure Surface Shell to automatically start a debugger to collect a stack dump before any processes are stopped.

This procedure builds on the procedure in Debugging Crashing Surface Applications.

To collect debug dump information from an unresponsive managed application

  1. Perform the steps to collect debug dump information from a crashing application.

  2. In Windows mode, click Start, type regedit, and press Enter.

  3. In the left pane, expand HKEY_LOCAL_MACHINE, expand SOFTWARE, expand Wow6432Node, expand Microsoft, expand Surface, expand v2.0, expand Profiles, expand SurfaceStandard, and then click ApplicationProcessMonitoring.

  4. Right-click the LaunchDebuggerOnHang entry, and then click Modify.

    The Edit DWORD (32-bit) Value dialog box appears.

  5. In the Value data box, type 1, and then click OK.

After you enable the LaunchDebuggerOnHang registry value, Surface Shell starts the process that is specified in the DbgManagedDebugger value after Surface Shell detects that an installed application is not responding in Surface mode. For more information about setting LaunchDebuggerOnHang, see the Microsoft Surface Registry Keys topic in this guide.

Did you find this information useful? Please send us your suggestions and comments.

© 2011 Microsoft Corporation. All rights reserved.