| werapi.h (6.0.6002.18005-Windows 6.0) | | werapi.h (6.1.7601.18381-Windows 7.0) |
| | |
| skipping to change at line 50 | | skipping to change at line 50 |
| // Do not suspend the process before error reporting | | // Do not suspend the process before error reporting |
| // | | // |
| #define WER_FAULT_REPORTING_FLAG_DISABLE_THREAD_SUSPENSION 4 | | #define WER_FAULT_REPORTING_FLAG_DISABLE_THREAD_SUSPENSION 4 |
| | |
| // | | // |
| // Queue critical reports for this process and upload from the queue | | // Queue critical reports for this process and upload from the queue |
| // | | // |
| #define WER_FAULT_REPORTING_FLAG_QUEUE_UPLOAD 8 | | #define WER_FAULT_REPORTING_FLAG_QUEUE_UPLOAD 8 |
| | |
| // | | // |
|
| | // Fault reporting UI should always be shown. This is only applicable for intera |
| | ctive processes |
| | // |
| | #define WER_FAULT_REPORTING_ALWAYS_SHOW_UI 16 |
| | |
| | // |
| // Maximum length of the report event name | | // Maximum length of the report event name |
| // | | // |
| #define WER_MAX_EVENT_NAME_LENGTH 64 | | #define WER_MAX_EVENT_NAME_LENGTH 64 |
| | |
| // | | // |
| // Maximum length of the name of a signature element | | // Maximum length of the name of a signature element |
| // | | // |
| #define WER_MAX_SIGNATURE_NAME_LENGTH 128 | | #define WER_MAX_SIGNATURE_NAME_LENGTH 128 |
| | |
| // | | // |
| | |
| skipping to change at line 144 | | skipping to change at line 149 |
| WerUIAdditionalDataDlgHeader = 1, | | WerUIAdditionalDataDlgHeader = 1, |
| WerUIIconFilePath = 2, | | WerUIIconFilePath = 2, |
| WerUIConsentDlgHeader = 3, | | WerUIConsentDlgHeader = 3, |
| WerUIConsentDlgBody = 4, | | WerUIConsentDlgBody = 4, |
| WerUIOnlineSolutionCheckText = 5, | | WerUIOnlineSolutionCheckText = 5, |
| WerUIOfflineSolutionCheckText = 6, | | WerUIOfflineSolutionCheckText = 6, |
| WerUICloseText = 7, | | WerUICloseText = 7, |
| WerUICloseDlgHeader = 8, | | WerUICloseDlgHeader = 8, |
| WerUICloseDlgBody = 9, | | WerUICloseDlgBody = 9, |
| WerUICloseDlgButtonText = 10, | | WerUICloseDlgButtonText = 10, |
|
| | WerUICustomActionButtonText = 11, |
| WerUIMax | | WerUIMax |
| } WER_REPORT_UI; | | } WER_REPORT_UI; |
| | |
| // | | // |
| // The type of the registered files | | // The type of the registered files |
| // | | // |
| typedef enum _WER_REGISTER_FILE_TYPE | | typedef enum _WER_REGISTER_FILE_TYPE |
| { | | { |
| WerRegFileTypeUserDocument = 1, | | WerRegFileTypeUserDocument = 1, |
| WerRegFileTypeOther = 2, | | WerRegFileTypeOther = 2, |
| | |
| skipping to change at line 179 | | skipping to change at line 185 |
| | |
| typedef enum _WER_SUBMIT_RESULT | | typedef enum _WER_SUBMIT_RESULT |
| { | | { |
| WerReportQueued = 1, | | WerReportQueued = 1, |
| WerReportUploaded = 2, | | WerReportUploaded = 2, |
| WerReportDebug = 3, | | WerReportDebug = 3, |
| WerReportFailed = 4, | | WerReportFailed = 4, |
| WerDisabled = 5, | | WerDisabled = 5, |
| WerReportCancelled = 6, | | WerReportCancelled = 6, |
| WerDisabledQueue = 7, | | WerDisabledQueue = 7, |
|
| WerReportAsync = 8 | | WerReportAsync = 8, |
| | WerCustomAction = 9 |
| } WER_SUBMIT_RESULT, *PWER_SUBMIT_RESULT; | | } WER_SUBMIT_RESULT, *PWER_SUBMIT_RESULT; |
| | |
| // | | // |
| // The type of the report | | // The type of the report |
| // | | // |
| typedef enum _WER_REPORT_TYPE | | typedef enum _WER_REPORT_TYPE |
| { | | { |
| WerReportNonCritical = 0, | | WerReportNonCritical = 0, |
| WerReportCritical = 1, | | WerReportCritical = 1, |
| WerReportApplicationCrash = 2, | | WerReportApplicationCrash = 2, |
| | |
| skipping to change at line 207 | | skipping to change at line 214 |
| // | | // |
| // NOTE: These should always occupy the lower 16 bits of the file flag dword. | | // NOTE: These should always occupy the lower 16 bits of the file flag dword. |
| // The upper 16 bits are reserved for internal use and get cleared by WerAddFile
. | | // The upper 16 bits are reserved for internal use and get cleared by WerAddFile
. |
| // | | // |
| #define WER_FILE_DELETE_WHEN_DONE 1 // Delete the file once WER is done | | #define WER_FILE_DELETE_WHEN_DONE 1 // Delete the file once WER is done |
| #define WER_FILE_ANONYMOUS_DATA 2 // This file does not contain any PII | | #define WER_FILE_ANONYMOUS_DATA 2 // This file does not contain any PII |
| | |
| // | | // |
| // Report submission flags. | | // Report submission flags. |
| // | | // |
|
| #define WER_SUBMIT_HONOR_RECOVERY 1 // show recovery option | | #define WER_SUBMIT_HONOR_RECOVERY 1 // show recovery option |
| #define WER_SUBMIT_HONOR_RESTART 2 // show application restar | | #define WER_SUBMIT_HONOR_RESTART 2 // show application rest |
| t option | | art option |
| #define WER_SUBMIT_QUEUE 4 // report directly to queu | | #define WER_SUBMIT_QUEUE 4 // report directly to qu |
| e | | eue |
| #define WER_SUBMIT_SHOW_DEBUG 8 // show the debug button | | #define WER_SUBMIT_SHOW_DEBUG 8 // show the debug button |
| #define WER_SUBMIT_ADD_REGISTERED_DATA 16 // Add registered data to | | #define WER_SUBMIT_ADD_REGISTERED_DATA 16 // Add registered data t |
| the WER report | | o the WER report |
| #define WER_SUBMIT_OUTOFPROCESS 32 // Force the report to go | | #define WER_SUBMIT_OUTOFPROCESS 32 // Force the report to g |
| out of process | | o out of process |
| #define WER_SUBMIT_NO_CLOSE_UI 64 // Do not show the close d | | #define WER_SUBMIT_NO_CLOSE_UI 64 // Do not show the close |
| ialog for the critical report | | dialog for the critical report |
| #define WER_SUBMIT_NO_QUEUE 128 // Do not queue the report | | #define WER_SUBMIT_NO_QUEUE 128 // Do not queue the repo |
| #define WER_SUBMIT_NO_ARCHIVE 256 // Do not archive the repo | | rt |
| rt | | #define WER_SUBMIT_NO_ARCHIVE 256 // Do not archive the re |
| #define WER_SUBMIT_START_MINIMIZED 512 // The initial reporting U | | port |
| I is minimized and will flash | | #define WER_SUBMIT_START_MINIMIZED 512 // The initial reporting |
| #define WER_SUBMIT_OUTOFPROCESS_ASYNC 1024 // The initial reporting U | | UI is minimized and will flash |
| I is minimized and will flash | | #define WER_SUBMIT_OUTOFPROCESS_ASYNC 1024 // Force the report to g |
| | o out of process and do not wait for it to finish |
| | #define WER_SUBMIT_BYPASS_DATA_THROTTLING 2048 // Bypass data throttlin |
| | g for the report |
| | #define WER_SUBMIT_ARCHIVE_PARAMETERS_ONLY 4096 // Archive only the para |
| | meters; the cab is discarded |
| | #define WER_SUBMIT_REPORT_MACHINE_ID 8192 // Always send the machi |
| | ne ID, regardless of the consent the report was submitted with |
| | |
| typedef struct _WER_REPORT_INFORMATION | | typedef struct _WER_REPORT_INFORMATION |
| { | | { |
| DWORD dwSize; | | DWORD dwSize; |
| HANDLE hProcess; | | HANDLE hProcess; |
| WCHAR wzConsentKey[64]; | | WCHAR wzConsentKey[64]; |
| WCHAR wzFriendlyEventName[128]; | | WCHAR wzFriendlyEventName[128]; |
| WCHAR wzApplicationName[128]; | | WCHAR wzApplicationName[128]; |
| WCHAR wzApplicationPath[MAX_PATH]; | | WCHAR wzApplicationPath[MAX_PATH]; |
| WCHAR wzDescription[512]; | | WCHAR wzDescription[512]; |
| | |
| skipping to change at line 259 | | skipping to change at line 269 |
| { | | { |
| PEXCEPTION_POINTERS pExceptionPointers; | | PEXCEPTION_POINTERS pExceptionPointers; |
| BOOL bClientPointers; | | BOOL bClientPointers; |
| } WER_EXCEPTION_INFORMATION, *PWER_EXCEPTION_INFORMATION; | | } WER_EXCEPTION_INFORMATION, *PWER_EXCEPTION_INFORMATION; |
| | |
| typedef enum _WER_CONSENT | | typedef enum _WER_CONSENT |
| { | | { |
| WerConsentNotAsked = 1, | | WerConsentNotAsked = 1, |
| WerConsentApproved = 2, | | WerConsentApproved = 2, |
| WerConsentDenied = 3, | | WerConsentDenied = 3, |
|
| | WerConsentAlwaysPrompt = 4, |
| WerConsentMax | | WerConsentMax |
| }WER_CONSENT; | | }WER_CONSENT; |
| | |
| __control_entrypoint(DllExport) | | __control_entrypoint(DllExport) |
| HRESULT | | HRESULT |
| WINAPI | | WINAPI |
| WerReportCreate( | | WerReportCreate( |
| __in PCWSTR pwzEventType, | | __in PCWSTR pwzEventType, |
| __in WER_REPORT_TYPE repType, | | __in WER_REPORT_TYPE repType, |
| __in_opt PWER_REPORT_INFORMATION pReportInformation, | | __in_opt PWER_REPORT_INFORMATION pReportInformation, |
| | |
| skipping to change at line 359 | | skipping to change at line 370 |
| ); | | ); |
| | |
| __control_entrypoint(DllExport) | | __control_entrypoint(DllExport) |
| HRESULT | | HRESULT |
| WINAPI | | WINAPI |
| WerReportCloseHandle( | | WerReportCloseHandle( |
| __in HREPORT hReportHandle | | __in HREPORT hReportHandle |
| ); | | ); |
| | |
| // | | // |
|
| // ++++++++++++++++++++++++++ Crash APIs ++++++++++++++++++++++++++++++++++++++ | | // ++++++++++++++++++++++++++ Registration APIs ++++++++++++++++++++++++++++++++
++++++ |
| // | | // |
| | |
| #define WER_MAX_REGISTERED_ENTRIES 512 | | #define WER_MAX_REGISTERED_ENTRIES 512 |
| | |
| HRESULT | | HRESULT |
| WINAPI | | WINAPI |
| WerRegisterFile( | | WerRegisterFile( |
| __in PCWSTR pwzFile, | | __in PCWSTR pwzFile, |
| __in WER_REGISTER_FILE_TYPE regFileType, | | __in WER_REGISTER_FILE_TYPE regFileType, |
| __in DWORD dwFlags | | __in DWORD dwFlags |
| | |
| skipping to change at line 421 | | skipping to change at line 432 |
| __in BOOL bAllUsers | | __in BOOL bAllUsers |
| ); | | ); |
| | |
| HRESULT | | HRESULT |
| WINAPI | | WINAPI |
| WerRemoveExcludedApplication( | | WerRemoveExcludedApplication( |
| __in PCWSTR pwzExeName, | | __in PCWSTR pwzExeName, |
| __in BOOL bAllUsers | | __in BOOL bAllUsers |
| ); | | ); |
| | |
|
| | // |
| | // ++++++++++++++++++++++++++ Run time handler APIs +++++++++++++++++++++++++++ |
| | // |
| | |
| | #define WER_MAX_REGISTERED_RUNTIME_EXCEPTION_MODULES 16 |
| | |
| | HRESULT |
| | WINAPI |
| | WerRegisterRuntimeExceptionModule( |
| | __in PCWSTR pwszOutOfProcessCallbackDll, |
| | __in PVOID pContext |
| | ); |
| | |
| | HRESULT |
| | WINAPI |
| | WerUnregisterRuntimeExceptionModule( |
| | __in PCWSTR pwszOutOfProcessCallbackDll, |
| | __in PVOID pContext |
| | ); |
| | |
| | #define WER_RUNTIME_EXCEPTION_EVENT_FUNCTION "OutOfProcessExcepti |
| | onEventCallback" |
| | #define WER_RUNTIME_EXCEPTION_EVENT_SIGNATURE_FUNCTION "OutOfProcessExcepti |
| | onEventSignatureCallback" |
| | #define WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH "OutOfProcessExcepti |
| | onEventDebuggerLaunchCallback" |
| | |
| | typedef struct _WER_RUNTIME_EXCEPTION_INFORMATION |
| | { |
| | DWORD dwSize; |
| | HANDLE hProcess; |
| | HANDLE hThread; |
| | EXCEPTION_RECORD exceptionRecord; |
| | CONTEXT context; |
| | PCWSTR pwszReportId; |
| | } WER_RUNTIME_EXCEPTION_INFORMATION, *PWER_RUNTIME_EXCEPTION_INFORMATION; |
| | |
| | typedef |
| | HRESULT |
| | (* PFN_WER_RUNTIME_EXCEPTION_EVENT)( |
| | __in PVOID pContext, |
| | __in const PWER_RUNTIME_EXCEPTION_INFORMATION pExceptionInformation, |
| | __out BOOL * pbOwnershipClaimed, |
| | __out_ecount(*pchSize) PWSTR pwszEventName, |
| | __inout PDWORD pchSize, |
| | __out PDWORD pdwSignatureCount |
| | ); |
| | |
| | typedef |
| | HRESULT |
| | (* PFN_WER_RUNTIME_EXCEPTION_EVENT_SIGNATURE)( |
| | __in PVOID pContext, |
| | __in const PWER_RUNTIME_EXCEPTION_INFORMATION pExceptionInformation, |
| | __in DWORD dwIndex, |
| | __out_ecount(*pchName) PWSTR pwszName, |
| | __inout PDWORD pchName, |
| | __out_ecount(*pchValue) PWSTR pwszValue, |
| | __inout PDWORD pchValue |
| | ); |
| | |
| | typedef |
| | HRESULT |
| | (* PFN_WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH)( |
| | __in PVOID pContext, |
| | __in const PWER_RUNTIME_EXCEPTION_INFORMATION pExceptionInformation, |
| | __out PBOOL pbIsCustomDebugger, |
| | __out_ecount(*pchName) PWSTR pwszDebuggerLaunch, |
| | __inout PDWORD pchDebuggerLaunch, |
| | __out PBOOL pbIsDebuggerAutolaunch |
| | ); |
| | |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| } | | } |
| #endif | | #endif |
| | |
| End of changes. 7 change blocks. |
| 21 lines changed or deleted | | 108 lines changed or added |
|