from: http://www.digilogworld.net/entry/dump-file-%EC%83%9D%EC%84%B1
| ||||||||||||||||||||||||||||||
1. SetUnhandledExceptionFilterl 예외 처리 handler를 설치한다. l param: LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter l callback function: TopLevelExceptionFilter(PEXCEPTION_POINTERS exPtrs) l Filter chaining l Enforcing your own filter ü Import Address Table(IAT) hooking ü Detours-like hooking – needs license for commercial use ü Patch the begging of SetUnhandledExceptionFilter function l Library: Kernel32.lib. 2. MiniDumpWriteDumpl User-mode에서 mini dump 정보를 특정 파일에 기록 한다. l param: hProcess, ProcessId, hFile, DumpType, ExceptionParam … l DumpType ü MiniDumpNormal : Include just the information necessary to capture stack traces for all existing threads in a process. ü MiniDumpWithDataSegs : Include the data sections from all loaded modules. This results in the inclusion of global variables, which can make the minidump file significantly larger. For per-module control, use the ModuleWriteDataSeg enumeration value from MODULE_WRITE_FLAGS. ü MiniDumpWithFullMemory : Include all accessible memory in the process. The raw memory data is included at the end, so that the initial structures can be mapped directly without the raw memory information. This option can result in a very large file. ü … l Library: Dbghelp.lib 3. When working with PE executables built by Microsoft tools, we usually have to deal with only a subset of types:
4. Compile option
|