TraceView'�A Debug View Utility



Click here for a larger image.

Environment: C# .NET Framework 1.0

Introduction

The first source of debug messages is the output debug stream and these messages are usually generated when a process calls OutputDebugString(); this is what ATLTRACE() does. These messages are available through a memory mapped file called DBWIN_BUFFER and access to this is managed through two events called DBWIN_BUFFER_READY and DBWIN_DATA_READY. The data in the memory mapped file is a string prefixed with the process ID of the process that generates the string. The code to access this memory mapped file is in the Platform SDK example.

TraceView is a debug utility that captures debug messages from shared memory DBWIN_BUFFER. It has following useful features:

  1. Trace selected processes—Delect multiple processes or all processes.
  2. Apply custom filters at run time—This can be used for class level tracing. If filter strings are provided, it looks for the first occurence of the filter string into a message and filters out messages.
  3. Log the messages to log file—Efficient way to log messages into a file. It dumps messages only after the number of new messages exceeds ViewCapacity.
  4. Level of tracing—All, Error, Warning, Info and Verbose. It looks for first occurence of these trace level strings into messages to filter out the messages.
  5. Multiple line messages are displayed in separate rows under the same process and time group.
  6. Persistent user settings—It serializes the application settings in .config file in user's path.



Click here for a larger image.



Click here for a larger image.

Downloads

Download TraceView - 15 Kb


Comments

  • Nothing new

    Posted by Legacy on 11/21/2003 12:00am

    Originally posted by: Anders Karlsson

    I dont see why this has been posted here - if the code would be available it would have been helpful.

    www.sysinternals.com has already a debug viewer that I have used for years.

    Reply
  • Sourcecode unknown...

    Posted by Legacy on 11/21/2003 12:00am

    Originally posted by: pizz

    As always when an article does not contain any sourcecode, it will be useless to all other programmers on codeguru.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: September 19, 2014 @ 2:00 p.m. ET / 11:00 a.m. PT In response to the rising number of data breaches and the regulatory and legal impact that can occur as a result of these incidents, leading analysts at Forrester Research have developed five important design principles that will help security professionals reduce their attack surface and mitigate vulnerabilities. Check out this upcoming eSeminar and join Chris Sherman of Forrester Research to learn how to deal with the influx of new device …

  • Packaged application development teams frequently operate with limited testing environments due to time and labor constraints. By virtualizing the entire application stack, packaged application development teams can deliver business results faster, at higher quality, and with lower risk.

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds