:beetle: BugTrap: Catch unhandled exceptions in unmanaged and managed .NET code.


Build status Release License


BugTrap is a tool to catch unhandled exceptions in unmanaged and managed .NET code. BugTrap also supports sending crash reports to a remote server for analysis.

The original author, Maksim Pyatkovskiy, has a great article about BugTrap on CodeProject that goes into detail about how BugTrap is used.

The BugTrap source code and binaries in this repository are granted by the original author under the MIT license. In other words, you’re free to use BugTrap in commercial and non-commercial applications.

Download & Install

Check the releases section in this repository for the latest builds:
BugTrap.zip contains all BugTrap components required for Win32/x64 projects:

  • BugTrap[U][D][N][-x64].dll - BugTrap DLL module.
  • BugTrap[U][D][N][-x64].lib - BugTrap library file used by linker.
    • [U] - Unicode aware version has ‘U’ letter. ANSI version doesn’t have ‘U’ letter.
    • [D] - Debug version has ‘D’ letter. Release version doesn’t have ‘D’ letter.
    • [N] - managed (.NET) version has ‘N’ letter. Native version doesn’t have ‘N’ letter.
    • [-x64] - 64 bit version for AMD-64 platform has ‘-x64’ suffix. x86 version doesn’t have this suffix.
  • dbghelp.dll - DbgHelp library (see “BugTrap Developer’s Guide” for details).
  • BugTrap.h - Header file with BugTrap API definitions.
  • BTTrace.h - C++ wrapper of custom logging functions.
  • BTAtlWindow.h - ATL/WTL exception handlers.
  • BTMfcWindow.h - MFC exception handlers.
  • CrashExplorer.exe - MAP file analyzer.
  • BugTrap.chm - BugTrap 1.x Specification.

Please see “BugTrap Developer’s Guide” for additional information about file types used by BugTrap for Win32/x64.

BugTrap Server Application

Inside BugTrap.zip, you’ll also find the following server applications for server side acceptance of crash reports:

  • Server\BugTrapServer - BugTrap Server Windows Service in C#
  • Server\BugTrapWebServer - BugTrap Web Server in ASP.NET
  • Server\JBugTrapServer - BugTrap Server in Java

You can choose any server technology to begin accepting crash reports from BugTrap clients. Open and edit *.config files for various configuration parameters.