今天在网上学习了关于dump文件生成及利用dump文件定位程序出错位置的一些知识,并在VS2008环境下做了简单的试验,现整理记录下来。
一、dump文件的生成
1、在主程序中加入Dump.h文件,这个文件用来实现程序崩溃回调并生成dump文件。代码如下:
//Dump.h
#pragma once
#include <Windows.h>
#include <dbghelp.h>
#define DUMP_FILE ".\\WindowsP.dmp"
#include <string>
using std::string;
void CreateDumpFile(LPCSTR lpstrDumpFilePathName, EXCEPTION_POINTERS *pException)
{
// 创建Dump文件
HANDLE hDumpFile = CreateFileA(lpstrDumpFilePathName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL)