GME
13
|
Defines the interface for the CrashRpt.DLL. More...
Go to the source code of this file.
Classes | |
struct | tagCR_INSTALL_INFOW |
struct | tagCR_INSTALL_INFOA |
struct | tagCR_EXCEPTION_INFO |
class | CrAutoInstallHelper |
Installs exception handlers in constructor and uninstalls in destructor. More... | |
class | CrThreadAutoInstallHelper |
Installs (uninstalls) exception handlers for the caller thread in class' constructor (destructor). More... | |
Defines | |
#define | __reserved |
#define | __in |
#define | __in_opt |
#define | __out_ecount_z(x) |
#define | CRASHRPT_EXTERNC |
#define | CRASHRPTAPI(rettype) CRASHRPT_EXTERNC rettype WINAPI |
#define | CRASHRPT_VER 1210 |
Current CrashRpt version. | |
#define | Install InstallA |
Character set-independent mapping of InstallW() and InstallA() functions. | |
#define | AddFile AddFileA |
Character set-independent mapping of AddFileW() and AddFileA() functions. | |
#define | CR_HTTP 0 |
Send error report via HTTP (or HTTPS) connection. | |
#define | CR_SMTP 1 |
Send error report via SMTP connection. | |
#define | CR_SMAPI 2 |
Send error report via simple MAPI (using default mail client). | |
#define | CR_NEGATIVE_PRIORITY ((UINT)-1) |
Special priority constant that allows to skip certain delivery method. | |
#define | CR_INST_STRUCTURED_EXCEPTION_HANDLER 0x1 |
Install SEH handler (deprecated name, use CR_INST_SEH_EXCEPTION_HANDLER instead). | |
#define | CR_INST_SEH_EXCEPTION_HANDLER 0x1 |
Install SEH handler. | |
#define | CR_INST_TERMINATE_HANDLER 0x2 |
Install terminate handler. | |
#define | CR_INST_UNEXPECTED_HANDLER 0x4 |
Install unexpected handler. | |
#define | CR_INST_PURE_CALL_HANDLER 0x8 |
Install pure call handler (VS .NET and later). | |
#define | CR_INST_NEW_OPERATOR_ERROR_HANDLER 0x10 |
Install new operator error handler (VS .NET and later). | |
#define | CR_INST_SECURITY_ERROR_HANDLER 0x20 |
Install security error handler (VS .NET and later). | |
#define | CR_INST_INVALID_PARAMETER_HANDLER 0x40 |
Install invalid parameter handler (VS 2005 and later). | |
#define | CR_INST_SIGABRT_HANDLER 0x80 |
Install SIGABRT signal handler. | |
#define | CR_INST_SIGFPE_HANDLER 0x100 |
Install SIGFPE signal handler. | |
#define | CR_INST_SIGILL_HANDLER 0x200 |
Install SIGILL signal handler. | |
#define | CR_INST_SIGINT_HANDLER 0x400 |
Install SIGINT signal handler. | |
#define | CR_INST_SIGSEGV_HANDLER 0x800 |
Install SIGSEGV signal handler. | |
#define | CR_INST_SIGTERM_HANDLER 0x1000 |
Install SIGTERM signal handler. | |
#define | CR_INST_ALL_EXCEPTION_HANDLERS 0 |
Install all possible exception handlers. | |
#define | CR_INST_CRT_EXCEPTION_HANDLERS 0x1FFE |
Install exception handlers for the linked CRT module. | |
#define | CR_INST_NO_GUI 0x2000 |
Do not show GUI, send report silently (use for non-GUI apps only). | |
#define | CR_INST_HTTP_BINARY_ENCODING 0x4000 |
Use multi-part HTTP uploads with binary attachment encoding. | |
#define | CR_INST_DONT_SEND_REPORT 0x8000 |
Don't send error report immediately, just save it locally. | |
#define | CR_INST_APP_RESTART 0x10000 |
Restart the application on crash. | |
#define | CR_INST_NO_MINIDUMP 0x20000 |
Do not include minidump file to crash report. | |
#define | CR_INST_SEND_QUEUED_REPORTS 0x40000 |
CrashRpt should send error reports that are waiting to be delivered. | |
#define | CR_INST_STORE_ZIP_ARCHIVES 0x80000 |
CrashRpt should store both uncompressed error report files and ZIP archives. | |
#define | crInstall crInstallA |
Character set-independent mapping of crInstallW() and crInstallA() functions. | |
#define | crAddFile crAddFileA |
Character set-independent mapping of crAddFileW() and crAddFileA() functions. | |
#define | CR_AF_TAKE_ORIGINAL_FILE 0 |
Take the original file (do not copy it to the error report folder). | |
#define | CR_AF_MAKE_FILE_COPY 1 |
Copy the file to the error report folder. | |
#define | CR_AF_FILE_MUST_EXIST 0 |
Function will fail if file doesn't exist at the moment of function call. | |
#define | CR_AF_MISSING_FILE_OK 2 |
Do not fail if file is missing (assume it will be created later). | |
#define | crAddFile2 crAddFile2A |
Character set-independent mapping of crAddFile2W() and crAddFile2A() functions. | |
#define | CR_AS_VIRTUAL_SCREEN 0 |
Take a screenshot of the virtual screen. | |
#define | CR_AS_MAIN_WINDOW 1 |
Take a screenshot of application's main window. | |
#define | CR_AS_PROCESS_WINDOWS 2 |
Take a screenshot of all visible process windows. | |
#define | CR_AS_GRAYSCALE_IMAGE 4 |
Make a grayscale image instead of a full-color one. | |
#define | CR_AS_USE_JPEG_FORMAT 8 |
Store screenshots as JPG files. | |
#define | crAddProperty crAddPropertyA |
Character set-independent mapping of crAddPropertyW() and crAddPropertyA() functions. | |
#define | crAddRegKey crAddRegKeyA |
Character set-independent mapping of crAddRegKeyW() and crAddRegKeyA() functions. | |
#define | CR_WIN32_STRUCTURED_EXCEPTION 0 |
SEH exception (deprecated name, use CR_SEH_EXCEPTION instead). | |
#define | CR_SEH_EXCEPTION 0 |
SEH exception. | |
#define | CR_CPP_TERMINATE_CALL 1 |
C++ terminate() call. | |
#define | CR_CPP_UNEXPECTED_CALL 2 |
C++ unexpected() call. | |
#define | CR_CPP_PURE_CALL 3 |
C++ pure virtual function call (VS .NET and later). | |
#define | CR_CPP_NEW_OPERATOR_ERROR 4 |
C++ new operator fault (VS .NET and later). | |
#define | CR_CPP_SECURITY_ERROR 5 |
Buffer overrun error (VS .NET only). | |
#define | CR_CPP_INVALID_PARAMETER 6 |
Invalid parameter exception (VS 2005 and later). | |
#define | CR_CPP_SIGABRT 7 |
C++ SIGABRT signal (abort). | |
#define | CR_CPP_SIGFPE 8 |
C++ SIGFPE signal (flotating point exception). | |
#define | CR_CPP_SIGILL 9 |
C++ SIGILL signal (illegal instruction). | |
#define | CR_CPP_SIGINT 10 |
C++ SIGINT signal (CTRL+C). | |
#define | CR_CPP_SIGSEGV 11 |
C++ SIGSEGV signal (invalid storage access). | |
#define | CR_CPP_SIGTERM 12 |
C++ SIGTERM signal (termination request). | |
#define | CR_NONCONTINUABLE_EXCEPTION 32 |
Non continuable sofware exception. | |
#define | CR_THROW 33 |
Throw C++ typed exception. | |
#define | crGetLastErrorMsg crGetLastErrorMsgA |
Defines character set-independent mapping for crGetLastErrorMsgW() and crGetLastErrorMsgA(). | |
Typedefs | |
typedef struct tagCR_INSTALL_INFOW | CR_INSTALL_INFOW |
typedef CR_INSTALL_INFOW * | PCR_INSTALL_INFOW |
typedef struct tagCR_INSTALL_INFOA | CR_INSTALL_INFOA |
typedef CR_INSTALL_INFOA * | PCR_INSTALL_INFOA |
typedef CR_INSTALL_INFOA | CR_INSTALL_INFO |
Character set-independent mapping of CR_INSTALL_INFOW and CR_INSTALL_INFOA structures. | |
typedef PCR_INSTALL_INFOA | PCR_INSTALL_INFO |
typedef struct tagCR_EXCEPTION_INFO | CR_EXCEPTION_INFO |
typedef CR_EXCEPTION_INFO * | PCR_EXCEPTION_INFO |
Functions | |
typedef | BOOL (CALLBACK *LPGETLOGFILE)(LPVOID lpvState) |
Client crash callback function prototype. | |
LPVOID WINAPI | InstallW (LPGETLOGFILE pfnCallback, LPCWSTR pszEmailTo, LPCWSTR pszEmailSubject) |
Installs exception handlers for the current process. | |
LPVOID WINAPI | InstallA (LPGETLOGFILE pfnCallback, LPCSTR pszEmailTo, LPCSTR pszEmailSubject) |
void WINAPI | Uninstall (LPVOID lpState) |
Uninstalls the exception filters set up by Install(). | |
void WINAPI | AddFileW (LPVOID lpState, LPCWSTR pszFile, LPCWSTR pszDesc) |
Adds a file to the crash report. | |
void WINAPI | AddFileA (LPVOID lpState, LPCSTR pszFile, LPCSTR pszDesc) |
void WINAPI | GenerateErrorReport (LPVOID lpState, PEXCEPTION_POINTERS pExInfo) |
Generates the crash report. | |
int WINAPI | crInstallW (PCR_INSTALL_INFOW pInfo) |
Installs exception handlers for the caller process. | |
int WINAPI | crInstallA (PCR_INSTALL_INFOA pInfo) |
int WINAPI | crUninstall () |
Unsinstalls exception handlers previously installed with crInstall(). | |
int WINAPI | crInstallToCurrentThread () |
Installs exception handlers to the current thread. | |
int WINAPI | crInstallToCurrentThread2 (DWORD dwFlags) |
Installs exception handlers to the caller thread. | |
int WINAPI | crUninstallFromCurrentThread () |
Uninstalls C++ exception handlers from the current thread. | |
int WINAPI | crAddFileW (LPCWSTR pszFile, LPCWSTR pszDesc) |
Adds a file to crash report. | |
int WINAPI | crAddFileA (LPCSTR pszFile, LPCSTR pszDesc) |
int WINAPI | crAddFile2W (LPCWSTR pszFile, LPCWSTR pszDestFile, LPCWSTR pszDesc, DWORD dwFlags) |
Adds a file to crash report. | |
int WINAPI | crAddFile2A (LPCSTR pszFile, LPCSTR pszDestFile, LPCSTR pszDesc, DWORD dwFlags) |
int WINAPI | crAddScreenshot (DWORD dwFlags) |
Adds a screenshot to the crash report. | |
int WINAPI | crAddScreenshot2 (DWORD dwFlags, int nJpegQuality) |
Adds a screenshot to the crash report. | |
int WINAPI | crAddPropertyW (LPCWSTR pszPropName, LPCWSTR pszPropValue) |
Adds a string property to the crash report. | |
int WINAPI | crAddPropertyA (LPCSTR pszPropName, LPCSTR pszPropValue) |
int WINAPI | crAddRegKeyW (LPCWSTR pszRegKey, LPCWSTR pszDstFileName, DWORD dwFlags) |
Adds a registry key dump to the crash report. | |
int WINAPI | crAddRegKeyA (LPCSTR pszRegKey, LPCSTR pszDstFileName, DWORD dwFlags) |
int WINAPI | crGenerateErrorReport (CR_EXCEPTION_INFO *pExceptionInfo) |
Manually generates an errror report. | |
int WINAPI | crExceptionFilter (unsigned int code, struct _EXCEPTION_POINTERS *ep) |
Can be used as a SEH exception filter. | |
int WINAPI | crEmulateCrash (unsigned ExceptionType) throw (...) |
Emulates a predefined crash situation. | |
int WINAPI | crGetLastErrorMsgW (LPWSTR pszBuffer, UINT uBuffSize) |
Gets the last CrashRpt error message. | |
int WINAPI | crGetLastErrorMsgA (LPSTR pszBuffer, UINT uBuffSize) |
#define __in |
Definition at line 51 of file CrashRpt.h.
#define __in_opt |
Definition at line 54 of file CrashRpt.h.
#define __out_ecount_z | ( | x | ) |
Definition at line 57 of file CrashRpt.h.
#define __reserved |
Definition at line 48 of file CrashRpt.h.
#define CR_AF_FILE_MUST_EXIST 0 |
Function will fail if file doesn't exist at the moment of function call.
Definition at line 872 of file CrashRpt.h.
#define CR_AF_MAKE_FILE_COPY 1 |
Copy the file to the error report folder.
Definition at line 870 of file CrashRpt.h.
#define CR_AF_MISSING_FILE_OK 2 |
Do not fail if file is missing (assume it will be created later).
Definition at line 873 of file CrashRpt.h.
#define CR_AF_TAKE_ORIGINAL_FILE 0 |
Take the original file (do not copy it to the error report folder).
Definition at line 869 of file CrashRpt.h.
#define CR_AS_GRAYSCALE_IMAGE 4 |
Make a grayscale image instead of a full-color one.
Definition at line 960 of file CrashRpt.h.
#define CR_AS_MAIN_WINDOW 1 |
Take a screenshot of application's main window.
Definition at line 958 of file CrashRpt.h.
#define CR_AS_PROCESS_WINDOWS 2 |
Take a screenshot of all visible process windows.
Definition at line 959 of file CrashRpt.h.
#define CR_AS_USE_JPEG_FORMAT 8 |
Store screenshots as JPG files.
Definition at line 961 of file CrashRpt.h.
#define CR_AS_VIRTUAL_SCREEN 0 |
Take a screenshot of the virtual screen.
Definition at line 957 of file CrashRpt.h.
#define CR_CPP_INVALID_PARAMETER 6 |
Invalid parameter exception (VS 2005 and later).
Definition at line 1194 of file CrashRpt.h.
#define CR_CPP_NEW_OPERATOR_ERROR 4 |
C++ new operator fault (VS .NET and later).
Definition at line 1192 of file CrashRpt.h.
#define CR_CPP_PURE_CALL 3 |
C++ pure virtual function call (VS .NET and later).
Definition at line 1191 of file CrashRpt.h.
#define CR_CPP_SECURITY_ERROR 5 |
Buffer overrun error (VS .NET only).
Definition at line 1193 of file CrashRpt.h.
#define CR_CPP_SIGABRT 7 |
C++ SIGABRT signal (abort).
Definition at line 1195 of file CrashRpt.h.
#define CR_CPP_SIGFPE 8 |
C++ SIGFPE signal (flotating point exception).
Definition at line 1196 of file CrashRpt.h.
#define CR_CPP_SIGILL 9 |
C++ SIGILL signal (illegal instruction).
Definition at line 1197 of file CrashRpt.h.
#define CR_CPP_SIGINT 10 |
C++ SIGINT signal (CTRL+C).
Definition at line 1198 of file CrashRpt.h.
#define CR_CPP_SIGSEGV 11 |
C++ SIGSEGV signal (invalid storage access).
Definition at line 1199 of file CrashRpt.h.
#define CR_CPP_SIGTERM 12 |
C++ SIGTERM signal (termination request).
Definition at line 1200 of file CrashRpt.h.
#define CR_CPP_TERMINATE_CALL 1 |
C++ terminate() call.
Definition at line 1189 of file CrashRpt.h.
#define CR_CPP_UNEXPECTED_CALL 2 |
C++ unexpected() call.
Definition at line 1190 of file CrashRpt.h.
#define CR_HTTP 0 |
Send error report via HTTP (or HTTPS) connection.
Definition at line 294 of file CrashRpt.h.
#define CR_INST_ALL_EXCEPTION_HANDLERS 0 |
Install all possible exception handlers.
Definition at line 317 of file CrashRpt.h.
#define CR_INST_APP_RESTART 0x10000 |
Restart the application on crash.
Definition at line 323 of file CrashRpt.h.
#define CR_INST_CRT_EXCEPTION_HANDLERS 0x1FFE |
Install exception handlers for the linked CRT module.
Definition at line 318 of file CrashRpt.h.
#define CR_INST_DONT_SEND_REPORT 0x8000 |
Don't send error report immediately, just save it locally.
Definition at line 322 of file CrashRpt.h.
#define CR_INST_HTTP_BINARY_ENCODING 0x4000 |
Use multi-part HTTP uploads with binary attachment encoding.
Definition at line 321 of file CrashRpt.h.
#define CR_INST_INVALID_PARAMETER_HANDLER 0x40 |
Install invalid parameter handler (VS 2005 and later).
Definition at line 309 of file CrashRpt.h.
#define CR_INST_NEW_OPERATOR_ERROR_HANDLER 0x10 |
Install new operator error handler (VS .NET and later).
Definition at line 307 of file CrashRpt.h.
#define CR_INST_NO_GUI 0x2000 |
Do not show GUI, send report silently (use for non-GUI apps only).
Definition at line 320 of file CrashRpt.h.
#define CR_INST_NO_MINIDUMP 0x20000 |
Do not include minidump file to crash report.
Definition at line 324 of file CrashRpt.h.
#define CR_INST_PURE_CALL_HANDLER 0x8 |
Install pure call handler (VS .NET and later).
Definition at line 306 of file CrashRpt.h.
#define CR_INST_SECURITY_ERROR_HANDLER 0x20 |
Install security error handler (VS .NET and later).
Definition at line 308 of file CrashRpt.h.
#define CR_INST_SEH_EXCEPTION_HANDLER 0x1 |
Install SEH handler.
Definition at line 303 of file CrashRpt.h.
#define CR_INST_SEND_QUEUED_REPORTS 0x40000 |
CrashRpt should send error reports that are waiting to be delivered.
Definition at line 325 of file CrashRpt.h.
#define CR_INST_SIGABRT_HANDLER 0x80 |
Install SIGABRT signal handler.
Definition at line 310 of file CrashRpt.h.
#define CR_INST_SIGFPE_HANDLER 0x100 |
Install SIGFPE signal handler.
Definition at line 311 of file CrashRpt.h.
#define CR_INST_SIGILL_HANDLER 0x200 |
Install SIGILL signal handler.
Definition at line 312 of file CrashRpt.h.
#define CR_INST_SIGINT_HANDLER 0x400 |
Install SIGINT signal handler.
Definition at line 313 of file CrashRpt.h.
#define CR_INST_SIGSEGV_HANDLER 0x800 |
Install SIGSEGV signal handler.
Definition at line 314 of file CrashRpt.h.
#define CR_INST_SIGTERM_HANDLER 0x1000 |
Install SIGTERM signal handler.
Definition at line 315 of file CrashRpt.h.
#define CR_INST_STORE_ZIP_ARCHIVES 0x80000 |
CrashRpt should store both uncompressed error report files and ZIP archives.
Definition at line 326 of file CrashRpt.h.
#define CR_INST_STRUCTURED_EXCEPTION_HANDLER 0x1 |
Install SEH handler (deprecated name, use CR_INST_SEH_EXCEPTION_HANDLER instead).
Definition at line 302 of file CrashRpt.h.
#define CR_INST_TERMINATE_HANDLER 0x2 |
Install terminate handler.
Definition at line 304 of file CrashRpt.h.
#define CR_INST_UNEXPECTED_HANDLER 0x4 |
Install unexpected handler.
Definition at line 305 of file CrashRpt.h.
#define CR_NEGATIVE_PRIORITY ((UINT)-1) |
Special priority constant that allows to skip certain delivery method.
Definition at line 299 of file CrashRpt.h.
#define CR_NONCONTINUABLE_EXCEPTION 32 |
Non continuable sofware exception.
Definition at line 1379 of file CrashRpt.h.
#define CR_SEH_EXCEPTION 0 |
SEH exception.
Definition at line 1188 of file CrashRpt.h.
#define CR_SMAPI 2 |
Send error report via simple MAPI (using default mail client).
Definition at line 296 of file CrashRpt.h.
#define CR_SMTP 1 |
Send error report via SMTP connection.
Definition at line 295 of file CrashRpt.h.
#define CR_THROW 33 |
Throw C++ typed exception.
Definition at line 1380 of file CrashRpt.h.
#define CR_WIN32_STRUCTURED_EXCEPTION 0 |
SEH exception (deprecated name, use CR_SEH_EXCEPTION instead).
Definition at line 1187 of file CrashRpt.h.
#define CRASHRPT_EXTERNC |
Definition at line 63 of file CrashRpt.h.
#define CRASHRPT_VER 1210 |
Current CrashRpt version.
Definition at line 69 of file CrashRpt.h.
#define CRASHRPTAPI | ( | rettype | ) | CRASHRPT_EXTERNC rettype WINAPI |
Definition at line 66 of file CrashRpt.h.
typedef struct tagCR_INSTALL_INFOA CR_INSTALL_INFOA |
typedef struct tagCR_INSTALL_INFOW CR_INSTALL_INFOW |
typedef CR_EXCEPTION_INFO* PCR_EXCEPTION_INFO |
Definition at line 1282 of file CrashRpt.h.
typedef PCR_INSTALL_INFOA PCR_INSTALL_INFO |
Definition at line 589 of file CrashRpt.h.
typedef CR_INSTALL_INFOA* PCR_INSTALL_INFOA |
Definition at line 579 of file CrashRpt.h.
typedef CR_INSTALL_INFOW* PCR_INSTALL_INFOW |
Definition at line 548 of file CrashRpt.h.