Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

Collecting Debug Dumps in Surface Mode

If an application fails or stops responding while it's running in Surface mode, you can configure a device made for Surface to attach a debugger to the application process. This topic shows how to generate a debug dump of an application that you can later analyze by using the Microsoft NT Symbolic Debugger (NTSD.exe).

This topic includes:

When you are ready to debug, complete one of the following procedures:

Before You Debug

Before you can attach a debugger, you must prevent Surface Shell from suppressing your debugger user interface.

To add your debugger to the list of processes that are exempt from UI suppression

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

  2. In the left pane, expand HKEY_LOCAL_MACHINE, expand SOFTWARE, expand Wow6432Node, expand Microsoft, expand Surface, expand v2.0, expand Global and then click UnknownUIExemptProcesses.

  3. In the right pane, right-click the empty area, point to New, and then click DWORD (32-bit) Value.

  4. In the New Value #1 box, type the full path and name of your debugger.

  5. Right-click the new registry entry and then click Modify. The Edit DWORD (32-bit) Value dialog box appears.

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

Now you can collect debug dump information about applications that are failing (crashing) or not responding. For more information about exempting UI suppression, see Global UnknownUIExemptProcesses Subkey in the "Microsoft Surface Registry Keys" topic of this guide.

Dump File Time-Outs

If a debugger takes more than 5 minutes (300 seconds) to write the dump file for an application that is not responding, Surface Shell automatically displays the out-of-order screen. This time-out is relevant only when a session is ending or an application is starting (an application is not responding if it did not call the SignalApplicationLoadingComplete method on time). In these situations, if Surface Shell detects an attached debugger, Surface Shell waits until this time-out elapses before it ends the process. If Surface Shell cannot end the process after that, Surface Shell enters an out-of-order state. You can increase or decrease this time-out if you want.

To change the dump file time-out

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

  2. 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.

  3. Right-click the DebugDumpTimeout entry, and then click Modify.

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

  4. In the Value data box, type a value from 0 through 600.

    0 means that Surface Shell never triggers a debug dump time-out and never stops the debugger or process.

  5. Click OK.

For more information about setting this registry entry, see DebugDumpTimeout in the "Microsoft Surface Registry Keys" topic of this guide.

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

© 2011 Microsoft Corporation. All rights reserved.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.