summaryrefslogtreecommitdiff
path: root/vendor/winapi/src/um/werapi.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/winapi/src/um/werapi.rs')
-rw-r--r--vendor/winapi/src/um/werapi.rs64
1 files changed, 64 insertions, 0 deletions
diff --git a/vendor/winapi/src/um/werapi.rs b/vendor/winapi/src/um/werapi.rs
new file mode 100644
index 0000000..f6dcf10
--- /dev/null
+++ b/vendor/winapi/src/um/werapi.rs
@@ -0,0 +1,64 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+//! Function prototypes for Windows Error Reporting (WER)
+use shared::minwindef::{BOOL, DWORD, PDWORD};
+use um::winnt::{HANDLE, HRESULT, PCWSTR, PVOID};
+pub const WER_FAULT_REPORTING_FLAG_NOHEAP: DWORD = 1;
+pub const WER_FAULT_REPORTING_FLAG_QUEUE: DWORD = 2;
+pub const WER_FAULT_REPORTING_FLAG_DISABLE_THREAD_SUSPENSION: DWORD = 4;
+pub const WER_FAULT_REPORTING_FLAG_QUEUE_UPLOAD: DWORD = 8;
+pub const WER_FAULT_REPORTING_ALWAYS_SHOW_UI: DWORD = 16;
+pub const WER_FAULT_REPORTING_NO_UI: DWORD = 32;
+pub const WER_FAULT_REPORTING_FLAG_NO_HEAP_ON_QUEUE: DWORD = 64;
+pub const WER_FAULT_REPORTING_DISABLE_SNAPSHOT_CRASH: DWORD = 128;
+pub const WER_FAULT_REPORTING_DISABLE_SNAPSHOT_HANG: DWORD = 256;
+pub const WER_FAULT_REPORTING_CRITICAL: DWORD = 512;
+pub const WER_FAULT_REPORTING_DURABLE: DWORD = 1024;
+ENUM!{enum WER_REGISTER_FILE_TYPE {
+ WerRegFileTypeUserDocument = 1,
+ WerRegFileTypeOther = 2,
+ WerRegFileTypeMax,
+}}
+extern "system" {
+ pub fn WerRegisterFile(
+ pwzFile: PCWSTR,
+ regFileType: WER_REGISTER_FILE_TYPE,
+ dwFlags: DWORD,
+ ) -> HRESULT;
+ pub fn WerUnregisterFile(
+ pwzFilePath: PCWSTR,
+ ) -> HRESULT;
+ pub fn WerRegisterMemoryBlock(
+ pvAddress: PVOID,
+ dwSize: DWORD,
+ ) -> HRESULT;
+ pub fn WerUnregisterMemoryBlock(
+ pvAddress: PVOID,
+ ) -> HRESULT;
+ pub fn WerSetFlags(
+ dwFlags: DWORD,
+ ) -> HRESULT;
+ pub fn WerGetFlags(
+ hProcess: HANDLE,
+ pdwFlags: PDWORD,
+ ) -> HRESULT;
+ pub fn WerAddExcludedApplication(
+ pwzExeName: PCWSTR,
+ bAllUsers: BOOL,
+ ) -> HRESULT;
+ pub fn WerRemoveExcludedApplication(
+ pwzExeName: PCWSTR,
+ bAllUsers: BOOL,
+ ) -> HRESULT;
+ pub fn WerRegisterRuntimeExceptionModule(
+ pwszOutOfProcessCallbackDll: PCWSTR,
+ pContext: PVOID,
+ ) -> HRESULT;
+ pub fn WerUnregisterRuntimeExceptionModule(
+ pwszOutOfProcessCallbackDll: PCWSTR,
+ pContext: PVOID,
+ ) -> HRESULT;
+}