qtcreator版本 Qt Creator 4.11.0
使用msvc2015 32bit编译器:分为debug和release两种
新建工程:TestDump.pro
//cusdump.h 头文件
#ifndef CUSDUMP_H
#define CUSDUMP_H
#pragma once
#include <tchar.h>
#include <Windows.h>
#include <DbgHelp.h>
#pragma comment(lib, "user32.lib")
int GenerateMiniDump(PEXCEPTION_POINTERS pExceptionPointers)
{
// 定义函数指针
typedef BOOL(WINAPI * MiniDumpWriteDumpT)(
HANDLE,
DWORD,
HANDLE,
MINIDUMP_TYPE,
PMINIDUMP_EXCEPTION_INFORMATION,
PMINIDUMP_USER_STREAM_INFORMATION,
PMINIDUMP_CALLBACK_INFORMATION
);
// 从 "DbgHelp.dll" 库中获取 "MiniDumpWriteDump" 函数
MiniDumpWriteDumpT pfnMiniDumpWriteDump = NULL;
HMODULE hDbgHelp = LoadLibrary(L"DbgHelp.dll");
if (NULL == hDbgHelp)
{
return EXCEPTION_CONTINUE_EXECUTION;
}
pfnMiniDumpWriteDump = (MiniDumpWriteDumpT)GetProcAddress(hDbgHelp, "MiniDumpWriteDump");
if (NULL == pfnMiniDumpWriteD

本文介绍了如何在QtCreator4.11.0中使用msvc201532位编译器构建工程,生成debug和release版本,并涉及pdb和dmp文件的创建。在debug模式下pdb文件会自动生成,而release模式下需额外配置。同时,文章讨论了MinGW编译器的不同行为以及使用DbgHelp.dll生成dump文件的技巧,但mingw生成的pdb文件无法在VS中直接用于调试。
最低0.47元/天 解锁文章
859

被折叠的 条评论
为什么被折叠?



