[Debug]. Net debugging and C ++ debugging Resources

Source: Internet
Author: User
Tags windows support

The following is a summary of tools and resources that you might be interested in after taking the. NET debugging and/or C ++ debugging courses we offer at SELA.

[Shameless plug: If you haven't taken these courses yet, I strongly suggest that you check them out. between the two of them they have more than 20 hands-on debugging exercises which basically guarantee that you're re going to come out a windbg expert and be able to analyze dumps, solve problems in production, pinpoint memory leaks, and so on.]

First of all, the tools you are going to need. This is also a list of what I ask system administrators to install when giving these courses in a disconnected environment:

    • Windows XP SP2 or later + symbols
    • Visual Studio 2008 or Visual Studio 2010
    • Visual c ++ 2010 redistributable (x86) + symbols
    • . NET Framework 3.5 SP1 + symbols
    • . NET Framework 4.0 + symbols
    • Debugging tools for Windows 32-bit
    • Windows support tools
    • Windows Resource Kit tools
    • Sysinternals suite
    • CLR profiler 2.0
    • Application compatibility toolkit 5.6
    • Application verifier 32-bit
    • . Net Reflector
    • Sosex debugging Extension

Now the resources you might find handy. I organized these by exercise, so that for each exercise there is at least one reference you might find useful:

  1. Setting up symbols
    1. Signing ing symbols in a connected environment (KB)
    2. Obtaining windows symbol packages
    3. How to verify symbols with symchk
  2. Diagnosing a managed exception
    1. Refreshing automatic crash dumps
    2. Using! Printexception and! Clrstack
  3. Managed deadlock with monitors
    1. Using! Syncblk and sosex's! Dlk
    2. Analyzing Monitor-based deadlocks on 64-bit
    3. Another way to tell the sync object your thread waits
  4. Managed Memory Leak with static event
    1. Diagnosing a memory leak using SOS's! Dumpheap, CLR profiler, and Hawkeye
    2. Inspecting a managed heap! Dumpheap
    3. Diagnosing a memory leak caused by event handlers
  5. Managed Memory Leak with finalizer
    1. Unblock my finalizer
    2. Don't blindly count on a finalizer
  6. File Access problem with Process Monitor
    1. . Net file access in Process Monitor
    2. The case of the slow logons (Process Monitor)
  7. Application compatibility fix
    1. Creating a registry redirection (virtualregistry)
    2. Version lie shims
    3. Using the correctfilepaths Shim
  8. Diagnosing assembly loading with fusion Log Viewer
    1. Using fuslogvw to diagnose binding issues
    2. Assembly private bin path pitfall
  9. Finalization Race Condition
    1. Finalizer vs. Application
  10. Reader-writer lock deadlock
    1. Implementing a RWL using a semaphore
  11. COM and sta Memory Leak
    1. Find the sta thread to which we're re switching from sendreceive2
    2. Find the sta thread to which we're re switching from gettosta
    3. Inspecting the oxidentry structure in gettosta
  12. Comparing out-of-memory exceptions
    1. Memory display tool for virtual memory and GC heap
  13. Unmanaged memory leak with umdh
    1. How to Use umdh to find memory leaks
    2. Getprocessheap and _ get_heap_handle
  14. Unmanaged deadlock with critical sections
    1. Refreshing the internals of critical sections
    2. Using! CS .! Locks (with case studies)
  15. Unmanaged heap upload uption with application Verifier
    1. Processing heap-based buffer overflows
    2. Using pageheap.exe (KB)
  16. Unmanaged stack snapshot uption
    1. Common stack analysis commands
  17. File leak with process monitor and handle tracing
    1. See handle open call stacks
    2. The oh.exe Tool
  18. Invalid handle problems with handle tracing
    1. Use! Htrace to detect an invalid handle reference and when it was closed
    2. Handle application verifier stops
  19. C ++ runtime checks
    1. /RTC compiler Switch
  20. Multi-object deadlock with WCT and local kernel debugging
    1. Vista wait chain Traversal
    2. WCT debugging extension (also on codeplex)
  21. Diagnosing a C ++ exception
    1. Decoding the parameters of a thrown C ++ exception
    2. Exception-related commands

Finally, there's my three year old list of debugging tools that coshould also be considered useful.

Address: http://blogs.microsoft.co.il/blogs/sasha/archive/2010/08/10/net-debugging-and-c-debugging-resources.aspx

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.