Я попытался получить файл дампа моего приложения с помощью команды ProcDump следующим образом:
c:\dump>procdump.exe -e -h -ma -o -w myapp.exe c:\dump
ProcDump v6.00 - Writes process dump files
Copyright (C) 2009-2013 Mark Russinovich
Sysinternals - www.sysinternals.com
With contributions from Andrew Richards
Waiting for process named myapp.exe...
Process: myapp.exe (1620)
CPU threshold: n/a
Performance counter: n/a
Commit threshold: n/a
Threshold seconds: n/a
Number of dumps: 1
Hung window check: Enabled
Exception monitor: Unhandled
Exception filter: *
Terminate monitor: Disabled
Dump file: c:\dump\myapp_YYMMDD_HHMMSS.dmpPress Ctrl-C to end monitoring without terminating the process.
[12:23:13] Exception: E0434F4D.COM
[12:23:27] Exception: E0000001
[12:23:38] Exception: 80040155
[12:25:21] Exception: E0434F4D.COM
The process terminated
Но в чем смысл исключений E0434F4D.COM, E0000001 и 80040155?
Эти числа являются кодами исключения и могут, например, использоваться в WinDbg для обработки исключений (команда sxe
).
E0434F4D
исключение .NET
Персонажи .COM
являются ASCII-представлением кода ошибки (вывод из WinDbg):
0:017> .formats e0434f4d
Evaluate expression:
...
Chars: .COM
80040155
выглядит как HRESULT (вывод из WinDbg):
0:017> !error 80040155
Error code: (HRESULT) 0x80040155 (2147746133) - Interface not registered