DoctorDumpSDK
Classes | Macros | Typedefs | Enumerations
CrashRpt.h File Reference
#include <windows.h>

Go to the source code of this file.

Classes

struct  crash_rpt::ExceptionInfo
 Information about exception being processed. More...
 
struct  crash_rpt::custom_data_collection::ExceptionInfo
 Information about the exception. More...
 
struct  crash_rpt::custom_data_collection::IDataBag
 This interface used to add custom data to crash report. More...
 
struct  crash_rpt::custom_data_collection::Settings
 Contains data for optional custom data collection after the crash in context of sendrpt.exe process. More...
 
struct  crash_rpt::ApplicationInfo
 Contains data that identifies your application. More...
 
struct  crash_rpt::HandlerSettings
 Contains crash handling behavior customization parameters. More...
 
class  crash_rpt::CrashRpt
 To enable crash processing you should create an instance of this class. More...
 

Macros

#define CRASHRPT_ENABLE_RELEASE_ASSERTS   1
 

Typedefs

typedef CrashProcessingCallbackResult(CALLBACK * crash_rpt::PFNCRASHPROCESSINGCALLBACK) (CrashProcessingCallbackStage stage, ExceptionInfo *exceptionInfo, LPVOID userData)
 Client crash callback function prototype.
 
typedef Result(CALLBACK * crash_rpt::custom_data_collection::PFNCUSTOMDATACOLLECTIONCALLBACK) (const ExceptionInfo &exceptionInfo, IDataBag *dataBag)
 Client crash callback function prototype.
 
typedef crash_rpt::CrashRpt CrashHandler
 Deprecated. Use crash_rpt::CrashRpt class instead.
 
typedef crash_rpt::ApplicationInfo ApplicationInfo
 Deprecated. Use crash_rpt::ApplicationInfo class instead.
 
typedef crash_rpt::HandlerSettings HandlerSettings
 Deprecated. Use crash_rpt::HandlerSettings class instead.
 

Enumerations

enum  CrashProcessingCallbackStage { crash_rpt::BeforeSendReport, crash_rpt::AfterSendReport }
 Stages when crash processing callback called.
 
enum  CrashProcessingCallbackResult {
  crash_rpt::DoDefaultActions, crash_rpt::SkipSendReportReturnDefaultResult, crash_rpt::ContinueExecution, crash_rpt::ContinueSearch,
  crash_rpt::ExecuteHandler
}
 Result code for crash processing callback.
 
enum  Result { crash_rpt::custom_data_collection::ShowUploadConfirmDialog, crash_rpt::custom_data_collection::DoUpload, crash_rpt::custom_data_collection::CancelUpload }
 Result of custom data collection.
 

Macro Definition Documentation

#define CRASHRPT_ENABLE_RELEASE_ASSERTS   1

To redefine C assert macro behavior define macro CRASHRPT_ENABLE_RELEASE_ASSERTS as 1 and include CrashRpt.h in each translation unit as soon as possible (precompiled header is the best place for that).

1 #define CRASHRPT_ENABLE_RELEASE_ASSERTS 1
2 #include <CrashRpt.h>

When _DEBUG define is not defined (it is Release configuration) assert macro evaluates an expression and, when the result is false, sends report and continues execution. When _DEBUG define is defined (it is Debug configuration) assert macro works as standard assert macro from assert.h header.

Note
All assert calls before CrashRpt.h inclusion would work as standard asserts.
See also
crash_rpt::CrashRpt::ExceptionAssertionViolated crash_rpt::CrashRpt::SkipDoctorDump_SendAssertionViolated