BugSplat Native Windows DLL  3.6.0.0
BugSplat API reference for native Windows applications.
MiniDmpSender Class Reference

The MiniDmpSender class is used to add BugSplat crash reporting to your app. More...

#include <bugsplat.h>

Public Types

enum  _BS_MINIDUMP_TYPE {
  MiniDumpNormal = 0x00000000, MiniDumpWithDataSegs = 0x00000001, MiniDumpWithFullMemory = 0x00000002, MiniDumpWithHandleData = 0x00000004,
  MiniDumpFilterMemory = 0x00000008, MiniDumpScanMemory = 0x00000010, MiniDumpWithUnloadedModules = 0x00000020, MiniDumpWithIndirectlyReferencedMemory = 0x00000040,
  MiniDumpFilterModulePaths = 0x00000080, MiniDumpWithProcessThreadData = 0x00000100, MiniDumpWithPrivateReadWriteMemory = 0x00000200, MiniDumpWithoutOptionalData = 0x00000400,
  MiniDumpWithFullMemoryInfo = 0x00000800, MiniDumpWithThreadInfo = 0x00001000, MiniDumpWithCodeSegs = 0x00002000, MiniDumpWithoutAuxiliaryState = 0x00004000,
  MiniDumpWithFullAuxiliaryState = 0x00008000, MiniDumpWithPrivateWriteCopyMemory = 0x00010000, MiniDumpIgnoreInaccessibleMemory = 0x00020000, MiniDumpWithTokenInformation = 0x00040000,
  MiniDumpWithModuleHeaders = 0x00080000, MiniDumpFilterTriage = 0x00100000, MiniDumpWithAvxXStateContext = 0x00200000, MiniDumpValidTypeFlags = 0x003fffff
}
 
typedef enum MiniDmpSender::_BS_MINIDUMP_TYPE BS_MINIDUMP_TYPE
 

Public Member Functions

 MiniDmpSender (__wchar_t const *szDatabase, __wchar_t const *szApp, __wchar_t const *szVersion, __wchar_t const *szAppIdentifier=NULL, DWORD dwFlags=0x04)
 
virtual ~MiniDmpSender ()
 
bool enableExceptionFilter (bool enable=true)
 
bool isExceptionFilterEnabled () const
 Returns the current state of the unhandled exception filter, ie the last value sent to enableExceptionFilter. More...
 
MiniDmpSender::BS_MINIDUMP_TYPE getMiniDumpType () const
 Get the current minidump type. More...
 
void setMiniDumpType (MiniDmpSender::BS_MINIDUMP_TYPE eType)
 
bool enableFullMemoryDumpAndExit (bool enable=true)
 Limited support for full memory minidumps: dump will be created and a message box displayed indicating path to dump file; app will then exit w/o reporting crash. More...
 
bool isFullMemoryDumpAndExitEnabled () const
 Returns the current full minidump state. More...
 
bool setFlags (DWORD dwFlags)
 Set the option flags; see MDSF_FLAG... defines below. More...
 
DWORD getFlags () const
 Get the option flags. More...
 
void resetVersionString (const __wchar_t *wszVersion)
 Use to change the version string at runtime. More...
 
void resetAppIdentifier (const __wchar_t *wszDescription)
 Use to change the generic app identifier field at runtime. More...
 
void sendAdditionalFile (const __wchar_t *wszPath)
 Send additional file(s) along with the crash report; may be called repeatedly to send multiple files. More...
 
bool removeAdditionalFile (const __wchar_t *wszPath)
 Removes a file from the list created by sendAdditionalFile() More...
 
void setUserZipPath (const __wchar_t *wszPath)
 Use to set full path for crash report zip file; default is a path in the TEMP% folder. More...
 
void setResourceDllPath (const __wchar_t *wszPath)
 Use to set full path for BsSndRpt's resource DLL (allows dialog customizations, e.g. language); default is ./BugSplatRc.dll (or ./BugSplatRc64.dll). More...
 
void setDefaultUserName (const __wchar_t *wszName)
 Use to set the default user name. Useful for quiet-mode applications that don't prompt for user/email/description at crash time. More...
 
void setDefaultUserEmail (const __wchar_t *wszEmail)
 Use to set the default user email. Useful for quiet-mode applications that don't prompt for user/email/description at crash time. More...
 
void setDefaultUserDescription (const __wchar_t *wszDescription)
 Use to set the default user description. Useful for quiet-mode applications that don't prompt for user/email/description at crash time. More...
 
void createReport (EXCEPTION_POINTERS *pExcepInfo)
 
void createReport (const __wchar_t *wszStackTracePath)
 Use to send an XML stack trace to BugSplat, bypassing minidump creation. More...
 
void createReportAndExit ()
 Use to send a report and exit. More...
 
LONG unhandledExceptionHandler (PEXCEPTION_POINTERS pExceptionInfo)
 Use with MDSF_CUSTOMEXCEPTIONFILTER flag. More...
 
void setCallback (MiniDmpSenderCallback fnCallback)
 Use to assign a callback function for sharing additional information with the app after a crash occurs. More...
 
void getMinidumpPath (__wchar_t *buffer, size_t len)
 Get path to minidump. More...
 
LPVOID imp ()
 Internal method. More...
 

Detailed Description

The MiniDmpSender class is used to add BugSplat crash reporting to your app.

Member Typedef Documentation

◆ BS_MINIDUMP_TYPE

Member Enumeration Documentation

◆ _BS_MINIDUMP_TYPE

Enumerator
MiniDumpNormal 
MiniDumpWithDataSegs 
MiniDumpWithFullMemory 
MiniDumpWithHandleData 
MiniDumpFilterMemory 
MiniDumpScanMemory 
MiniDumpWithUnloadedModules 
MiniDumpWithIndirectlyReferencedMemory 
MiniDumpFilterModulePaths 
MiniDumpWithProcessThreadData 
MiniDumpWithPrivateReadWriteMemory 
MiniDumpWithoutOptionalData 
MiniDumpWithFullMemoryInfo 
MiniDumpWithThreadInfo 
MiniDumpWithCodeSegs 
MiniDumpWithoutAuxiliaryState 
MiniDumpWithFullAuxiliaryState 
MiniDumpWithPrivateWriteCopyMemory 
MiniDumpIgnoreInaccessibleMemory 
MiniDumpWithTokenInformation 
MiniDumpWithModuleHeaders 
MiniDumpFilterTriage 
MiniDumpWithAvxXStateContext 
MiniDumpValidTypeFlags 

Constructor & Destructor Documentation

◆ MiniDmpSender()

MiniDmpSender::MiniDmpSender ( __wchar_t const *  szDatabase,
__wchar_t const *  szApp,
__wchar_t const *  szVersion,
__wchar_t const *  szAppIdentifier = NULL,
DWORD  dwFlags = 0x04 
)
Parameters
szDatabasedatabase name on bugsplat.com
szAppapplication name as supplied with PDB files on bugsplat.com
szVersionversion identifier as supplied with PDB files on bugsplat.com
szAppIdentifiergeneric field to contain app details (locale, build #, etc...)
dwFlagsOption flags. see MDSF_FLAG... defines

◆ ~MiniDmpSender()

virtual MiniDmpSender::~MiniDmpSender ( )
virtual

Member Function Documentation

◆ createReport() [1/2]

void MiniDmpSender::createReport ( EXCEPTION_POINTERS *  pExcepInfo)

Use to send a BugSplat crash report outside of the unhandled exception filters. For example, you could send a report directly from your own try/catch clause.

◆ createReport() [2/2]

void MiniDmpSender::createReport ( const __wchar_t *  wszStackTracePath)

Use to send an XML stack trace to BugSplat, bypassing minidump creation.

◆ createReportAndExit()

void MiniDmpSender::createReportAndExit ( )
inline

Use to send a report and exit.

◆ enableExceptionFilter()

bool MiniDmpSender::enableExceptionFilter ( bool  enable = true)

To disable / enable the unhandled exception filter call this function with the desired mode This function is not valid when MDSF_PREVENTHIJACKING is used.

◆ enableFullMemoryDumpAndExit()

bool MiniDmpSender::enableFullMemoryDumpAndExit ( bool  enable = true)

Limited support for full memory minidumps: dump will be created and a message box displayed indicating path to dump file; app will then exit w/o reporting crash.

◆ getFlags()

DWORD MiniDmpSender::getFlags ( ) const

Get the option flags.

◆ getMinidumpPath()

void MiniDmpSender::getMinidumpPath ( __wchar_t *  buffer,
size_t  len 
)

Get path to minidump.

◆ getMiniDumpType()

MiniDmpSender::BS_MINIDUMP_TYPE MiniDmpSender::getMiniDumpType ( ) const

Get the current minidump type.

◆ imp()

LPVOID MiniDmpSender::imp ( )

Internal method.

◆ isExceptionFilterEnabled()

bool MiniDmpSender::isExceptionFilterEnabled ( ) const

Returns the current state of the unhandled exception filter, ie the last value sent to enableExceptionFilter.

◆ isFullMemoryDumpAndExitEnabled()

bool MiniDmpSender::isFullMemoryDumpAndExitEnabled ( ) const

Returns the current full minidump state.

◆ removeAdditionalFile()

bool MiniDmpSender::removeAdditionalFile ( const __wchar_t *  wszPath)

Removes a file from the list created by sendAdditionalFile()

◆ resetAppIdentifier()

void MiniDmpSender::resetAppIdentifier ( const __wchar_t *  wszDescription)

Use to change the generic app identifier field at runtime.

◆ resetVersionString()

void MiniDmpSender::resetVersionString ( const __wchar_t *  wszVersion)

Use to change the version string at runtime.

◆ sendAdditionalFile()

void MiniDmpSender::sendAdditionalFile ( const __wchar_t *  wszPath)

Send additional file(s) along with the crash report; may be called repeatedly to send multiple files.

◆ setCallback()

void MiniDmpSender::setCallback ( MiniDmpSenderCallback  fnCallback)

Use to assign a callback function for sharing additional information with the app after a crash occurs.

◆ setDefaultUserDescription()

void MiniDmpSender::setDefaultUserDescription ( const __wchar_t *  wszDescription)

Use to set the default user description. Useful for quiet-mode applications that don't prompt for user/email/description at crash time.

◆ setDefaultUserEmail()

void MiniDmpSender::setDefaultUserEmail ( const __wchar_t *  wszEmail)

Use to set the default user email. Useful for quiet-mode applications that don't prompt for user/email/description at crash time.

◆ setDefaultUserName()

void MiniDmpSender::setDefaultUserName ( const __wchar_t *  wszName)

Use to set the default user name. Useful for quiet-mode applications that don't prompt for user/email/description at crash time.

◆ setFlags()

bool MiniDmpSender::setFlags ( DWORD  dwFlags)

Set the option flags; see MDSF_FLAG... defines below.

◆ setMiniDumpType()

void MiniDmpSender::setMiniDumpType ( MiniDmpSender::BS_MINIDUMP_TYPE  eType)

Set the minidump type. Use with care. Changing the minidump type can result in large crash file uploads that may be rejected by BugSplat.

◆ setResourceDllPath()

void MiniDmpSender::setResourceDllPath ( const __wchar_t *  wszPath)

Use to set full path for BsSndRpt's resource DLL (allows dialog customizations, e.g. language); default is ./BugSplatRc.dll (or ./BugSplatRc64.dll).

◆ setUserZipPath()

void MiniDmpSender::setUserZipPath ( const __wchar_t *  wszPath)

Use to set full path for crash report zip file; default is a path in the TEMP% folder.

◆ unhandledExceptionHandler()

LONG MiniDmpSender::unhandledExceptionHandler ( PEXCEPTION_POINTERS  pExceptionInfo)

Use with MDSF_CUSTOMEXCEPTIONFILTER flag.


The documentation for this class was generated from the following file: