当前位置: 首页 > wzjs >正文

做雕塑设计的网站百度统计工具

做雕塑设计的网站,百度统计工具,甘肃网站建设公司,成都网站怎么推广目录 1.前言 2.生成Dump文件的第三方库 3.第三方库下载链接 4.编译qBreakpad 5.VS中使用qBreakpad 6.qBreakpad测试程序 前言 在第二篇文章中,我主要讲解了如何使用SetUnhandledExceptionFilter函数设置程序的异常回调,在设置的回调函数中调用MiniDumpWr…

目录

        1.前言

        2.生成Dump文件的第三方库

        3.第三方库下载链接

        4.编译qBreakpad

        5.VS中使用qBreakpad

        6.qBreakpad测试程序


前言

        在第二篇文章中,我主要讲解了如何使用SetUnhandledExceptionFilter函数设置程序的异常回调,在设置的回调函数中调用MiniDumpWriteDump接口函数生成的dump文件。而本小节将是对于生成Dump文件的扩展,主要是讲解多种不同的第三方库生成Dump文件,而本篇博客的重点将是对于qBreakpad进行讲解。


生成Dump文件的第三方库

        本小节将对本篇讲解的所有第三方库进行一个简单的汇总,主要讲解的有以下几个库:
        1.
CrashRpt​:该库仅支持Windows系统,能快速为 Windows 桌面应用添加崩溃报告功能,无需跨平台支持。但是该库非谷歌官方维护,社区活跃度较低

        2.Breakpad​:该库能支持跨平台使用,主要是针对需要轻量级、跨平台崩溃捕获的 C/C++ 项目。该库属于是谷歌开源项目,仍被维护但逐渐被 Crashpad 取代。

        3.qBreakpad​​:该库依赖于Qt,支持跨平台使用,主要针对的场景是专为 Qt 应用程序设计,简化集成流程,能自动处理 Qt 事件循环与信号。该库基于Breakpad的第三方封装,主要由社区维护。

        4.Crashpad:该库支持跨平台使用,支持HTTP上传Dump文件,主要针对的是需要现代崩溃报告系统且长期维护的项目。该库由谷歌官方维护,作为Breakpad的现代化第三方库的替代。
        根据这些总结,我汇总为一个表格,方便阅读。

第三方库是否跨平台维护状态优势适用场景
​​​​CrashRpt仅支持WindowsWindows社区维护自带 UI 和上传功能快速集成 Windows 应用
​​Breakpad​​支持逐渐被淘汰轻量、灵活需自定义流程的跨平台 C/C++ 项目
​​qBreakpad​​支持社区维护Qt 深度集成Qt 应用程序
​​Crashpad​​支持谷歌官方积极维护支持上传、长期维护新项目或需长期维护的复杂系统

PS:在使用CrashRpt库时,若引入的第三方库在CrashRpt后才导入,会导致这些提前引入的第三方库没有挂载到异常回调函数,从而使部分库出现异常时不会生成dump文件


第三方库下载链接

        1.CrashRot下载链接

CrashRpt - A crash reporting system for Windows applicationshttps://crashrpt.sourceforge.net/        2.Breakpad下载链接

google/breakpad: Mirror of Google Breakpad projecthttps://github.com/google/breakpad        3.qBreakpad下载链接

qBreakpad: Cross-platform Qt crash handler, implemented as wrapper around google-breakpadhttps://github.com/buzzySmile/qBreakpad        4.Crashpad下载链接及文档

chromium/crashpad: A crash-reporting systemhttps://github.com/chromium/crashpadCrashpad: Crashpad Interface Documentationhttps://crashpad.chromium.org/doxygen/index.html


编译qBreakpad

        本小节将对如何编译qBreakpad进行讲解,该库需要依赖于Breakpad和LSS这两个第三方库,其中qBreakpad和Breakpad的下载链接已经提供在第二小节,而LSS的链接如下:
LSShttps://github.com/ithaibo/linux-syscall-support

        接下来将对如何编译qBreakpad进行讲解,作者使用的环境是Qt5.15.1MSVC2019 64bit。具体编译步骤如下:
        1.
下载qBreakpad,Breakpad和LSS并解压

图1.下载qBreakpad,Breakpad和LSS并解压

        2.将解压的Breakpad源码移动到qBreakpad的third_party文件夹下的breakpad文件夹中

图2.移动Breakpad源码

        3.将解压的LSS源码移动到qBreakpad的third_party文件夹下的lss文件夹中



图3.移动LSS源码

        4.使用Qt打开qBreakpad的pro文件

图4.打开pro文件

        5.选择Qt编译套件

图5.选择编译套件

        6.qBreakpad文件夹解析

图6.文件夹解析

        7.编译Debug模式下的lib文件

图7.debug模式下的lib文件

        8.编译Release模式下的lib文件

图8.Release模式下的lib文件


VS中使用qBreakpad

        编译完成qBreakpad后,我们需要在项目中使用qBreakpad,接下来将讲解如何在Vs中使用qBreakpad第三方库生成项目,后续也会附上博主的项目示例开源链接。
        1.
将handler文件夹下的QBreakpadHttpUploader.h,QBreakpadHttpUploader.cpp,QBreakpadHandler.h和QBreakpadHandler.cpp文件复制到项目路径下

图9.移动文件至项目路径

        2.在项目中导入Qt模块

图10.导入Qt模块

        3.引入附加包含目录

图11.引入附加包含目录

        4.引入lib文件路径

图12.引入lib文件路径

        5.引入lib文件名称

图13.引入lib文件名称

        完成以上配置即可在项目中使用qBreakpad第三方库


qBreakpad测试程序

        这是一个由作者自己编写的测试程序,仅供参考。

#include "QBreakpadHandler.h"int main(int argc, char *argv[])
{QBreakpadInstance.setDumpPath("E:\Release");    // 设置生成dump文件路径return 0;
}

        在完成项目对qBreakpad第三方库的配置以后,只需要在main文件中添加QBreakpadInstance.setDumpPath()接口函数,指定生成dump文件的路径即可。接下来是作者项目的开源链接,如下:
qBreakpad测试项目https://github.com/3020Xmy/QBreakpadTest

http://www.dtcms.com/wzjs/168396.html

相关文章:

  • linux做网站要求深圳seo培训
  • 安阳做网站哪里好徐州百度推广电话
  • 网站制作工具汕头网站建设方案外包
  • 专注合肥网站建设高端营销型网站建设
  • 协会网站建设计划书长春今日头条新闻
  • 如何在网站上显示百度权重软文写作是什么意思
  • 网页游戏制作培训seo检测
  • 网站建设策划书封面网络推广费用计入什么科目
  • 教做软件的网站如何开通自己的网站
  • 惠州建设局网站首页如何建网站不花钱
  • 网站开发技术路线什么优化
  • 网站建设费可以计入办公费用么火爆产品的推广文案
  • 北大青鸟学费一览表超级seo外链工具
  • 怎么做ps4的视频网站福州seo
  • 杰奇怎么做网站地图新版阿里指数官网
  • Wordpress表单无法收到西安seo关键词排名
  • 中小学生做试卷的网站6bt种子万能搜索神器
  • 手机怎么建立自己网站seo网络优化师就业前景
  • 详情页面设计模板手机优化软件下载
  • 做网站都需要什么技术百度竞价推广怎么做效果好
  • 烟台网站建设电话中国广告公司前十强
  • 一个网站需要多少钱网店推广有哪些
  • 橙子建站仅向商家提供技术服务百度竞价推广开户费用
  • 网站建设 维护购销合同网络广告策划的内容
  • 国外网站建设 网站免费的黄冈网站有哪些
  • 新疆网站建设公司2022小说排行榜百度风云榜
  • 宁津 做网站免费的seo优化工具
  • 球赛投注网站开发网站优化seo方案
  • 怎么创建手机网站太原整站优化排名外包
  • 外包网站开发上海百度推广优化公司