Windows Error Reporting

Overview of the Windows Error Reporting technology.

To develop Windows Error Reporting, you need these headers:

For programming guidance for this technology, see:

Functions

Title Description
AddERExcludedApplicationA Excludes the specified application from error reporting.
AddERExcludedApplicationW Excludes the specified application from error reporting.
PFN_WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH WER calls this function to let you customize the debugger launch options and launch string.
PFN_WER_RUNTIME_EXCEPTION_EVENT WER calls this function to determine whether the exception handler is claiming the crash.
PFN_WER_RUNTIME_EXCEPTION_EVENT_SIGNATURE WER can call this function multiple times to get the report parameters that uniquely describe the problem.
ReportFault Enables an application that performs its own exception handling to report faults to Microsoft.
WerAddExcludedApplication Adds the specified application to the list of applications that are to be excluded from error reporting.
WerFreeString Frees up the memory used to store a report key string. This should be called after each successive call to WerStoreGetFirstReportKey or WerStoreGetNextReportKey, once the particular report key string has been used and is no longer needed.
WerGetFlags Retrieves the fault reporting settings for the specified process.
WerRegisterAdditionalProcess Registers a process to be included in the error report along with the main application process. Optionally specifies a thread within that registered process to get additional data from.
WerRegisterAppLocalDump Registers a path relative to the local app store for the calling application where Windows Error Reporting (WER) should save a copy of the diagnostic memory dump that WER collects when one of the processes for the application stops responding.
WerRegisterCustomMetadata Registers app-specific metadata to be collected (in the form of key/value strings) when WER creates an error report.
WerRegisterExcludedMemoryBlock Marks a memory block (that is normally included by default in error reports) to be excluded from the error report.
WerRegisterFile Registers a file to be collected when WER creates an error report.
WerRegisterMemoryBlock Registers a memory block to be collected when WER creates an error report.
WerRegisterRuntimeExceptionModule Registers a custom runtime exception handler that is used to provide custom error reporting for crashes.
WerRemoveExcludedApplication Removes the specified application from the list of applications that are to be excluded from error reporting.
WerReportAddDump Adds a dump of the specified type to the specified report.
WerReportAddFile Adds a file to the specified report.
WerReportCloseHandle Closes the specified report.
WerReportCreate Creates a problem report that describes an application event.
WerReportHang Initiates "no response" reporting on the specified window.
WerReportSetParameter Sets the parameters that uniquely identify an event for the specified report.
WerReportSetUIOption Sets the user interface options for the specified report.
WerReportSubmit Submits the specified report.
WerSetFlags Sets the fault reporting settings for the current process.
WerStoreClose Closes the collection of stored reports.
WerStoreGetFirstReportKey Gets a reference to the first report in the report store.
WerStoreGetNextReportKey Gets a reference to the next report in the error report store.
WerStoreOpen Opens the collection of stored error reports.
WerStoreQueryReportMetadataV2 Retrieves metadata about a report in the store.
WerUnregisterAdditionalProcess Removes a process from the list of additional processes to be included in the error report.
WerUnregisterAppLocalDump Cancels the registration that was made by calling the WerRegisterAppLocalDump function to specify that Windows Error Reporting (WER) should save a copy of the diagnostic memory dump that WER collects when one of the processes for the application stops responding.
WerUnregisterCustomMetadata Removes an item of app-specific metadata being collected during error reporting for the application.
WerUnregisterExcludedMemoryBlock Removes a memory block that was previously marked as excluded (it will again be included in error reports).
WerUnregisterFile Removes a file from the list of files to be added to reports generated for the current process.
WerUnregisterMemoryBlock Removes a memory block from the list of data to be collected during error reporting for the application.
WerUnregisterRuntimeExceptionModule Removes the registration of your WER exception handler.

Structures

Title Description
WER_DUMP_CUSTOM_OPTIONS Specifies custom minidump information to be collected by the WerReportAddDump function.
WER_EXCEPTION_INFORMATION Contains exception information for the WerReportAddDump function.
WER_REPORT_INFORMATION Contains information used by the WerReportCreate function.
WER_REPORT_METADATA_V2 Contains information about an error report generated by Windows Error Reporting.
WER_RUNTIME_EXCEPTION_INFORMATION Contains the exception information that you use to determine whether you want to claim the crash.