• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 请教类似QQ那样崩溃时弹出的自己的崩溃提示框是怎么写的。

请教类似QQ那样崩溃时弹出的自己的崩溃提示框是怎么写的。

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了请教别人问题时应该说,向老师请教问题时说,请教什么浮漂好用,请教律师,请教的意思等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 请教类似QQ那样崩溃时弹出的自己的崩溃提示框是怎么写的。
描述:

用的QQ都知道,如果QQ发生崩溃,QQ就会弹出一个自己的崩溃提示窗口,然后你可以点发送把崩溃信息发给软件开发商,替代了windows自带的Dr.Watson调试工具。
哪位达人懂啊,最好能给兄弟个源码。
  E-Mail: eiko.ding@gmail.com


解决方案1:


///////////////////////////////
#include "PSErrDlg.h"
LONG WINAPI MyExceptionFun(struct _EXCEPTION_POINTERS *ExceptionInfo )
{
CPSErrDlg dlg;
dlg.DoModal();
return EXCEPTION_EXECUTE_HANDLER; // 直接退出程序
//return EXCEPTION_CONTINUE_EXECUTION; // 好像是递归调用了自己的异常处理
//return EXCEPTION_CONTINUE_SEARCH; // 继续处理异常
}
extern"C" __declspec(dllexport)  void WINAPI InitErrHandle()
{
/*
//////////////////////////////////////////////////////////////////////////
// DetourFunctionWithTrampoline 作用 //
// 1. 保存被修改的入口代码 --> Trampoline 函数中 //
// 2. 修改目标函数入口(接管目标函数) //
//////////////////////////////////////////////////////////////////////////
// before Detouring a Function (此时三个函数[Target ,Trampoline, Detour]都是正常的状态,状态见 detour ppt 文档)
  DetourFunctionWithTrampoline((PBYTE)trampoline_MyFun,(PBYTE)MyFunDetour);
*/
////////////////////////////////////////////
SetUnhandledExceptionFilter(MyExceptionFun);
/*
typedef LONG (WINAPI *PTOP_LEVEL_EXCEPTION_FILTER)(
    struct _EXCEPTION_POINTERS *ExceptionInfo
    );
*/
}
extern"C"  __declspec(dllexport)  void WINAPI ReleaseErrHandle()
{
// DetourRemove((PBYTE)trampoline_MyFun,(PBYTE)MyFunDetour);
SetUnhandledExceptionFilter(NULL);
}

解决方案2:

同意捕获异常

解决方案3:

编译程序的时候,不对代码进行优化,然后在代码中使用
try{}catch (...){}
就可以捕获异常了。
例如:
try{
char *p = 0;
strcpy(p, "this is a test");
}
catch (...)
{
   MessageBox(0, "catch an error.", 0, MB_OK);
}
记住一定要把代码优化禁用,否则catch无效。

解决方案4:

肯定是异常

解决方案5:

学习

解决方案6:

windows核心编程里有的,结构化异常处理。SetUnhandledExceptionFilter

解决方案7:

会不会在
catch()
时处理了这些异常,然后自动发邮件的呢

解决方案8:

用的次数少,所以我的QQ没有
UP

解决方案9:

lightwell(大道不过两三行)说的是正解。
MSDN上的BugLayer有例子好像是Jeffry的,你可以去找一下。

解决方案10:

捕获了异常

解决方案11:

会不会是创建一个守候进程,定时用GetExitCodeProcess得到QQ进程的退出码来实现的?
如果非正常退出就提示.


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 请教一个问题,应该是很普遍把,各位都是怎么解决得
  • Com编译时遇到的问题。请教解决。
  • 请教程序运行时错误
  • 各位高手,请教请教?为什么VC中作一个W32DLL时会这样,为什么呢???
  • 请教:编写DLL时遇到导出的问题。
  • 请教一个DLL卸载时关闭数据库连接问题
  • 请教:调试一个dll时,经常显示一个编译错误,请大家指教一下!
  • 请教:编写DLL时遇到导出的问题。
  • 请教类似QQ那样崩溃时弹出的自己的崩溃提示框是怎么写的。
  • 看com聚合时有些问题请教

相关文章

  • 2017-06-04 给PB调的OCX应该怎么写?
  • 2017-06-05 还是createthread的问题
  • 2017-06-05 调用DLL出错
  • 2017-06-05 请问如何在一个函数中打开资源中的一个对话框?急!!!
  • 2017-06-04 为什么我的IE地址栏有时不支持粘贴操作?
  • 2017-06-04 求救!AddClass(FromTypeLibriary)从com组件生成的类缺少类
  • 2017-06-04 GUIDGENexe如何运行?(很低级)
  • 2017-06-05 请教各位老大!windows2000里怎么样用rundll32命令让计算机休眠阿?
  • 2017-06-05 线程通信(postmessage)的问题
  • 2017-06-04 reichedit插入图片,用了IDataObject,但是发布的时候说未注册类是怎么回事

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 我有一个画图程序想做成dll,接口怎么写?望高手不吝赐教
    • Flash播放
    • 0x80040100DRAGDROP_E_NOTREGISTERED异常
    • 多线程访问临界区的问题
    • 紧急求救:window98下不能运行window2000下用atl开发的com组件,怎么解决?
    • 请问为什么我用VC6编译dll后,debug目录并没有lib文件的?谢谢!具体步骤如下。
    • 我在一个MFC规则DLL中导出一个从CObject中派生的类,为什么会有warning???谢谢大家
    • 看过《COM原理和应用》来看一下~!!
    • 想学ActiveX需要看什么?求助高手
    • 想用Word2007的RibbonComboBox/RibbonDropDown等类,不知道要#import那个类型库或者DLL

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有