Click here to Skip to main content
15,887,083 members
Articles / Programming Languages / C++

Trapping Bugs with BlackBox

Rate me:
Please Sign up or sign in to vote.
3.72/5 (27 votes)
25 May 2003BSD6 min read 263.6K   2.1K   130  
A brief article explaining how to use BlackBox in your programs to trap errors
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32

/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

IDD_BLACKBOX_ERR_DLG DIALOG DISCARDABLE  0, 0, 320, 308
STYLE WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "BlackBox"
FONT 8, "MS Sans Serif"
BEGIN
    PUSHBUTTON      "&Copy",IDC_COPY_TO_CLIPBOARD,261,112,52,14
    PUSHBUTTON      "&Save...",IDC_SAVE_TO_FILE,261,130,52,14
    DEFPUSHBUTTON   "Close",IDCANCEL,261,86,52,14
    PUSHBUTTON      "Information...",IDC_MACHINE_INFO,261,201,52,14
    PUSHBUTTON      "State...",IDC_MACHINE_STATE,261,221,52,14
    PUSHBUTTON      "&About...",IDC_ABOUT,261,287,52,14
    GROUPBOX        "Exception Reason",IDC_STATIC,6,83,251,45
    GROUPBOX        "Registers",IDC_STATIC,6,132,251,63
    GROUPBOX        "Stack Trace",IDC_STATIC,6,198,251,103
    LISTBOX         IDC_STACKTRACE,11,208,242,88,LBS_NOINTEGRALHEIGHT | 
                    WS_VSCROLL | WS_TABSTOP
    LTEXT           "Static",IDC_EXCEPTION,12,93,242,31
    LTEXT           "Static",IDC_REGISTER,12,143,242,48
    LTEXT           "",IDC_INTRO2,1,1,318,73
    LTEXT           "Static",IDC_INTRO,30,6,283,65
    ICON            IDI_BUG,IDC_BUG_LBL,6,7,20,20
    CONTROL         "",IDC_STATIC,"Static",SS_ETCHEDHORZ,0,76,320,1
    PUSHBUTTON      "Mail to...",IDC_MAILTO,261,155,52,14
    PUSHBUTTON      "Submit bug...",IDC_SUBMIT_NEW_VCF_BUG,261,173,52,14
END

IDD_ABOUT_BLACKBOX DIALOG DISCARDABLE  0, 0, 205, 97
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION
CAPTION "About BlackBox "
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "Close",IDOK,164,7,34,14
    LTEXT           "BlackBox Software Error Reporting tool\nJim Crafton",
                    IDC_STATIC,24,7,136,23
    ICON            IDI_BUG,IDC_STATIC,7,7,20,20
    LTEXT           "Version  1.0\n\nStack trace and exception trapping code from John Robbins BugSlayerUtils",
                    IDC_STATIC,7,37,142,53
END

IDD_MACHINE_INFO_DLG DIALOG DISCARDABLE  0, 0, 265, 166
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Machine Information"
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "Close",IDOK,208,7,50,14
    GROUPBOX        "CPU",IDC_STATIC,7,7,195,37
    GROUPBOX        "Operating System",IDC_STATIC,7,47,194,40
    GROUPBOX        "Memory",IDC_STATIC,7,91,194,68
    LTEXT           "Static",IDC_CPU_LABEL,12,17,186,23
    LTEXT           "Static",IDC_OS_LABEL,11,58,186,25
    LTEXT           "Static",IDC_MEM_LABEL,11,100,186,55
END

IDD_MACHINESTATE_DLG DIALOG DISCARDABLE  0, 0, 317, 169
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Machine State"
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "Close",IDOK,260,7,50,14
    GROUPBOX        "Running Processes at crash:",IDC_STATIC,7,7,250,65
    GROUPBOX        "Modules Loaded by Selected Process",IDC_STATIC,7,77,250,
                    85
    LISTBOX         IDC_PROCESS_LIST,11,17,242,51,LBS_NOINTEGRALHEIGHT | 
                    WS_VSCROLL | WS_TABSTOP
    LISTBOX         IDC_PROCESS_MODULE_LIST,11,88,242,70,
                    LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_VSCROLL | 
                    WS_HSCROLL | WS_TABSTOP
END

IDD_INIT_DLG DIALOG DISCARDABLE  0, 0, 179, 55
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION
CAPTION "Retreiving and analyzing crash data"
FONT 8, "MS Sans Serif"
BEGIN
    CTEXT           "A crash has occurred...\nPlease wait while gathering system information...",
                    IDC_STATIC,32,7,140,25
    LTEXT           "Static",IDC_PROGRESS_LABEL,7,35,165,13,SS_CENTERIMAGE | 
                    SS_SUNKEN
    ICON            IDI_BUG,IDC_STATIC,7,7,20,20
END


/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//

#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE 
BEGIN
    IDD_BLACKBOX_ERR_DLG, DIALOG
    BEGIN
        LEFTMARGIN, 6
        VERTGUIDE, 6
        VERTGUIDE, 313
        BOTTOMMARGIN, 301
        HORZGUIDE, 7
    END

    IDD_ABOUT_BLACKBOX, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 198
        TOPMARGIN, 7
        BOTTOMMARGIN, 90
    END

    IDD_MACHINE_INFO_DLG, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 258
        TOPMARGIN, 7
        BOTTOMMARGIN, 159
    END

    IDD_MACHINESTATE_DLG, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 310
        TOPMARGIN, 7
        BOTTOMMARGIN, 162
    END

    IDD_INIT_DLG, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 172
        TOPMARGIN, 7
        BOTTOMMARGIN, 48
    END
END
#endif    // APSTUDIO_INVOKED


#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE DISCARDABLE 
BEGIN
    "resource.h\0"
END

2 TEXTINCLUDE DISCARDABLE 
BEGIN
    "#include ""afxres.h""\r\n"
    "\0"
END

3 TEXTINCLUDE DISCARDABLE 
BEGIN
    "\r\n"
    "\0"
END

#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//

IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE 
BEGIN
    "C",            IDC_COPY_TO_CLIPBOARD,  VIRTKEY, CONTROL, NOINVERT
    "S",            IDC_SAVE_TO_FILE,       VIRTKEY, CONTROL, NOINVERT
END


/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_BUG                 ICON    DISCARDABLE     "bug.ico"
#endif    // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////



#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//


/////////////////////////////////////////////////////////////////////////////
#endif    // not APSTUDIO_INVOKED

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The BSD License


Written By
Software Developer (Senior)
United States United States
Currently working on the Visual Component Framework, a really cool C++ framework. Currently the VCF has millions upon millions upon billions of Users. If I make anymore money from it I'll have to buy my own country.

Comments and Discussions