C++软件添加dump调试打印日志(推荐)

C++软件添加dump调试打印日志(推荐),第1张

概述C++软件添加dump调试打印日志(推荐)#include<DbgHelp.h>#pragmacomment(lib,\"dbghelp.lib\")

C++软件添加dump调试打印日志(推荐)

#include <DbgHelp.h>#pragma comment(lib,"dbghelp.lib")LONG WINAPI topLevelExceptionFilter(struct _EXCEPTION_POINTERS *pExceptionInfo) {    //cout << "Enter topLevelExceptionFilter Function" << endl;    TCHAR szPath[MAX_PATH] = { 0 };   TCHAR szfilename[MAX_PATH] = { 0 };   TCHAR* szVersion = "v1.0";   TCHAR DWBufferSize = MAX_PATH;   SYstemTIME stLocalTime;   GetLocalTime(&stLocalTime);   CreateDirectory(szfilename,NulL);   StringCchPrintf(szfilename,MAX_PATH,"%s-%04d%02d%02d-%02d%02d%02d-%ld-%ld.dmp",  szVersion,stLocalTime.wYear,stLocalTime.wMonth,stLocalTime.wDay,  stLocalTime.wHour,stLocalTime.wMinute,stLocalTime.wSecond,  GetCurrentProcessID(),GetCurrentThreadID());    HANDLE hfile = Createfile(szfilename,GENERIC_WRITE,NulL,CREATE_ALWAYS,file_ATTRIBUTE_norMAL,NulL);    MINIDUMP_EXCEPTION_informatION stExceptionParam;     stExceptionParam.ThreadID  = GetCurrentThreadID();     stExceptionParam.ExceptionPointers = pExceptionInfo;     stExceptionParam.ClIEntPointers  = FALSE;     MinIDumpWriteDump(GetCurrentProcess(),GetCurrentProcessID(),hfile,MinIDumpWithFullMemory,&stExceptionParam,NulL);     CloseHandle(hfile);     getchar();    return EXCEPTION_EXECUTE_HANDLER;}//----------------------------------------------

在程序最开始的地方调用这个函数

SetUnhandledExceptionFilter(topLevelExceptionFilter);

以上这篇C++软件添加dump调试打印日志(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的C++软件添加dump调试打印日志(推荐)全部内容,希望文章能够帮你解决C++软件添加dump调试打印日志(推荐)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1246603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存