[发明专利]一种程序退出的方法及相关设备有效

专利信息
申请号: 201810728297.1 申请日: 2018-07-05
公开(公告)号: CN109117201B 公开(公告)日: 2021-03-16
发明(设计)人: 周志刚;陈少杰;张文明 申请(专利权)人: 武汉斗鱼网络科技有限公司
主分类号: G06F9/445 分类号: G06F9/445;G06F9/52
代理公司: 北京众达德权知识产权代理有限公司 11570 代理人: 刘杰
地址: 430000 湖北省武汉市东湖开*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 程序 退出 方法 相关 设备
【权利要求书】:

1.一种程序退出的方法,其特征在于,包括:

将加解密函数的关键数据和同步互斥锁保存到全局变量,所述加解密函数用于在进行网络协议通信时对数据进行加解密操作,所述同步互斥锁用于对所述数据进行加锁,所述关键数据为执行所述加解密函数所必需的数据;

通过调用Windows系统的应用程序编程接口API中的LoadLibraryA函数获取核心代码的内存地址;

通过调用所述API中的GetModuleInformation函数获取所述核心代码的占用内存大小,以将所述核心代码保存到全局变量G_netdll_Address中;

确定当前程序是否被调试;

若所述当前程序被调试,则修改所述加解密函数的关键数据,通过调用循环函数占用所述同步互斥锁,并删除所述当前程序的核心代码,以退出所述当前程序;

所述将加解密函数的关键数据和同步互斥锁保存到全局变量包括:

将所述加解密函数的关键数据保存到g_kCrc32Table全局变量中;

通过调用系统API函数CreatMutex创建所述同步互斥锁;

当所述同步互斥锁被使用时,通过调用API函数WaitForSingleObject等待所述同步互斥锁;

将所述同步互斥锁保存到g_hMutex全局变量中。

2.根据权利要求1所述的方法,其特征在于,所述确定当前程序是否被调试包括:

通过调用Windows系统的应用程序编程接口API中的IsDebuggerPresent函数确定所述当前程序是否被调用;

当所述IsDebuggerPresent函数的返回值为1时,确定所述当前程序被调试;

当所述IsDebuggerPresent函数的返回值为0时,确定所述当前程序未被调试。

3.根据权利要求1所述的方法,其特征在于,所述确定当前程序是否被调试包括:

加载系统的ntdll.dll模块,并根据所述ntdll.dll模块获取NtQueryInformationProcess接口;

调用所述NtQueryInformationProcess接口,得到当前进程的信息;

根据所述当前进程的信息确定所述当前程序是否被调试。

4.根据权利要求3所述的方法,其特征在于,所述加载系统的ntdll.dll模块,并根据所述ntdll.dll模块获取NtQueryInformationProcess接口包括:

通过调用API中的LoadLibraryA函数加载所述ntdll.dll模块,所述LoadLibraryA函数的输入参数包括所述ntdll.dll模块的标识信息,所述LoadLibraryA函数的输出参数为所述ntdll.dll模块的内存地址;

通过API中的GetProcAddress函数获取所述NtQueryInformationProcess接口在所述ntdll.dll模块的内存地址,所述GetProcAddress函数的输入函数包括所述ntdll.dll模块的内存地址。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810728297.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top