WER_DUMP_CUSTOM_OPTIONS structure (werapi.h)

Specifies custom Windows Error Reporting (WER) minidump information to be collected by the WerReportAddDump function.

Syntax

typedef struct _WER_DUMP_CUSTOM_OPTIONS {
  DWORD dwSize;
  DWORD dwMask;
  DWORD dwDumpFlags;
  BOOL  bOnlyThisThread;
  DWORD dwExceptionThreadFlags;
  DWORD dwOtherThreadFlags;
  DWORD dwExceptionThreadExFlags;
  DWORD dwOtherThreadExFlags;
  DWORD dwPreferredModuleFlags;
  DWORD dwOtherModuleFlags;
  WCHAR wzPreferredModuleList[WER_MAX_PREFERRED_MODULES_BUFFER];
} WER_DUMP_CUSTOM_OPTIONS, *PWER_DUMP_CUSTOM_OPTIONS;

Members

dwSize

The size of the structure, in bytes.

dwMask

A mask that controls which options are valid in this structure. You can specify one or more of the following values:

  • WER_DUMP_MASK_DUMPTYPE
  • WER_DUMP_MASK_ONLY_THISTHREAD
  • WER_DUMP_MASK_OTHER_MODULESFLAGS
  • WER_DUMP_MASK_OTHERTHREADFLAGS
  • WER_DUMP_MASK_OTHERTHREADFLAGS_EX
  • WER_DUMP_MASK_PREFERRED_MODULE_LIST
  • WER_DUMP_MASK_PREFERRED_MODULESFLAGS
  • WER_DUMP_MASK_THREADFLAGS
  • WER_DUMP_MASK_THREADFLAGS_EX

dwDumpFlags

The type information to include in the minidump. You can specify one or more of the MINIDUMP_TYPE flags.

This member is valid only if dwMask contains WER_DUMP_MASK_DUMPTYPE.

bOnlyThisThread

If this member is TRUE and dwMask contains WER_DUMP_MASK_ONLY_THISTHREAD, the minidump is to be collected only for the calling thread.

dwExceptionThreadFlags

The type of thread information to include in the minidump. You can specify one or more of the THREAD_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_THREADFLAGS.

dwOtherThreadFlags

The type of thread information to include in the minidump. You can specify one or more of the THREAD_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_OTHERTHREADFLAGS.

dwExceptionThreadExFlags

The type of thread information to include in the minidump. You can specify one or more of the THREAD_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_THREADFLAGS_EX.

dwOtherThreadExFlags

The type of thread information to include in the minidump. You can specify one or more of the THREAD_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_OTHERTHREADFLAGS_EX.

dwPreferredModuleFlags

The type of module information to include in the minidump for modules specified in the wzPreferredModuleList member. You can specify one or more of the MODULE_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_PREFERRED_MODULESFLAGS.

dwOtherModuleFlags

The type of module information to include in the minidump. You can specify one or more of the MODULE_WRITE_FLAGS flags.

This member is valid only if dwMask contains WER_DUMP_MASK_OTHER_MODULESFLAGS.

wzPreferredModuleList[WER_MAX_PREFERRED_MODULES_BUFFER]

A list of module names (do not include the path) to which the dwPreferredModuleFlags flags apply. Each name must be null-terminated, and the list must be terminated with two null characters (for example, module1.dll\0module2.dll\0\0).

To specify that all modules are preferred, set this member to *\0\0. If you include * in a list with other module names, the * is ignored.

This member is valid only if dwMask contains WER_DUMP_MASK_PREFERRED_MODULE_LIST.

Remarks

The flags specified in this structure have a direct correlation to flags passed in the MINIDUMP_CALLBACK_ROUTINE callback function callback function (see MiniDumpWriteDump function) when WER generates the dump file.

If the minidump's callback input type is ThreadCallback (see the CallbackType member of MINIDUMP_CALLBACK_INPUT structure), the ThreadWriteFlags member of MINIDUMP_CALLBACK_OUTPUT structure is set to the flags specified in the dwExceptionThreadFlags, dwExceptionThreadExFlags, dwOtherThreadFlags, or dwOtherThreadExFlags members. If the callback is for the crashing thread, the dwExceptionThreadFlags or dwExceptionThreadExFlags flags are used; otherwise, the dwOtherThreadFlags or dwOtherThreadExFlags flags are used.

If the callback input type is ModuleCallback, the ModuleWriteFlags member of MINIDUMP_CALLBACK_OUTPUT structure is set to the flags specified in the dwPreferredModuleFlags or dwOtherModuleFlags members. If the callback is for a module on the preferred modules list, the dwPreferredModuleFlags flags are used; otherwise, the dwOtherModuleFlags flags are used.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header werapi.h

See also

WerReportAddDump function, Windows Error Reporting