【技术实现步骤摘要】
本专利技术涉及程序动态调试,具体而言,涉及基于qt反射机制与dll注入的程序动态调试方法及系统。
技术介绍
1、当开发出一款qt应用程序,发行的release稳定版本在用户的电脑运行出现问题时,开发人员需要对出现的问题进行分析定位,找到程序中出现问题的部分,一般会使用程序内部打印的日志文件来完成。
2、当基于程序内部打印的日志文件来定位程序出现的问题所在时,若想要查看的信息或出现问题的部分在程序没有进行预埋,则难以精准定位程序出现的问题,且只能重新修改源代码、打包程序、发布release版本去重现此问题,再分析内部打印的日志文件对问题进行定位,整套流程执行下来较为耗时耗力,而且如果遇到一些比较难以复现的问题时,会加剧问题分析定位的成本。如果有在不修改源代码、不破坏用户运行环境的前提下,通过某种途径就能获取开发人员想要的信息的方案,将会使程序运行中的问题定位变得简单高效。
3、因此,我们有必要开发出一种基于qt反射机制与dll注入的程序动态调试方法及系统,不用修改程序的源代码,方便的功能扩展和定制,对程序问题定位和
...【技术保护点】
1.一种基于Qt反射机制与DLL注入的程序动态调试方法,其特征在于,包括:
2.根据权利要求1所述的一种基于Qt反射机制与DLL注入的程序动态调试方法,其特征在于,所述为所述目标程序添加Qt反射机制的支持数据,具体为:为所述目标程序实现一个继承自QApplication的子类,所述子类提供对函数进行反射机制修饰的Q_INVOKABLE修饰器,使所述函数能在外部通过反射机制进行调用。
3.根据权利要求2所述的一种基于Qt反射机制与DLL注入的程序动态调试方法,其特征在于,所述创建包含日志打印函数的动态链接库,具体包括:
4.根据权利要
...【技术特征摘要】
1.一种基于qt反射机制与dll注入的程序动态调试方法,其特征在于,包括:
2.根据权利要求1所述的一种基于qt反射机制与dll注入的程序动态调试方法,其特征在于,所述为所述目标程序添加qt反射机制的支持数据,具体为:为所述目标程序实现一个继承自qapplication的子类,所述子类提供对函数进行反射机制修饰的q_invokable修饰器,使所述函数能在外部通过反射机制进行调用。
3.根据权利要求2所述的一种基于qt反射机制与dll注入的程序动态调试方法,其特征在于,所述创建包含日志打印函数的动态链接库,具体包括:
4.根据权利要求3所述的一种基于qt反射机制与dll注入的程序动态调试方法,其特征在于,所述记录日志前,需要先确定所述日志打印函数的功能,定义所述eventfilter()函数的输入参数和返回值。
5.根据权利要求1所述的一种基于qt反射机制与dll注入的...
【专利技术属性】
技术研发人员:吴名荣,
申请(专利权)人:深圳牛学长科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。