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: December 11, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Market pressures to move more quickly and develop innovative applications are forcing organizations to rethink how they develop and release applications. The combination of public clouds and physical back-end infrastructures are a means to get applications out faster. However, these hybrid solutions complicate DevOps adoption, with application delivery pipelines that span across complex hybrid cloud and non-cloud environments. Check out this …

  • With the average hard drive now averaging one terabyte in size, the fallout from the explosion of user-created data has become an overwhelming volume of potential evidence that law-enforcement and corporate investigators spend countless hours examining. Join Us and SANS' Rob Lee for our 45-minute webinar, A Triage and Collection Strategy for Time-Sensitive Investigations, will demonstrate how to: Identify the folders and files that often contain key insights Reduce the time spent sifting through content by …

Most Popular Programming Stories

More for Developers

RSS Feeds