[发明专利]基于云的输入处理方法、装置、服务器和存储介质有效
申请号: | 201711487366.6 | 申请日: | 2017-12-29 |
公开(公告)号: | CN108052377B | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 周贺楠;陈国乐;艾风 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
代理公司: | 深圳市隆天联鼎知识产权代理有限公司 44232 | 代理人: | 刘抗美 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 输入 处理 方法 装置 服务器 存储 介质 | ||
1.一种基于云的输入处理方法,其特征在于,所述方法包括:
云应用端设置DirectInput接口的工作模式,所述云应用端启动后通过HookDirectInput接口的SetCooperativeLevel函数,将所述DirectInput接口设置为非独占和后台工作模式;
云应用端记录设置的输入事件数据格式;
所述云应用端重定向DirectInput接口对输入事件的获取操作;
所述云应用端绑定网络端口,等待客户端连接;
响应于用户在客户端的输入,云服务器的云应用端根据来自所述客户端的远程输入消息更新所述云应用端的远程输入事件队列;以及
所述云服务器的云应用端将用于获取输入事件的DirectInput接口获取输入事件的操作重定向至所述远程输入事件队列;
从所述远程输入事件队列获取来自所述客户端的输入事件,所述云服务器的消息处理逻辑对所述输入事件进行处理。
2.根据权利要求1所述的方法,其特征在于,所述的将用于获取输入事件的DirectInput接口获取输入事件的操作重定向至所述远程输入事件队列,包括:
通过钩子注入HOOK的方式将直接输入DirectInput接口中用于从本地输入事件队列中获取输入事件的函数修改为从所述远程输入事件队列中获取输入事件。
3.根据权利要求2所述的方法,其特征在于,所述的通过HOOK的方式将DirectInput接口中用于从本地输入事件队列中获取输入事件的函数修改为从所述远程输入事件队列中获取输入事件,包括:
通过HOOK的方式将所述DirectInput接口中获取设备数据GetDeviceData函数修改为从所述远程输入事件队列中获取输入事件。
4.根据权利要求1所述的方法,其特征在于,所述的将所述DirectInput接口设置为非独占和后台工作模式,包括:
通过HOOK的方式将所述DirectInput接口中设置协作等级SetCooperative-Level函数的参数修改为非独占模式DISCL_NONEXCLUSIVE及后台模式DISCL_BACKGROUND。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述云应用端设置的输入事件数据格式对所述远程输入事件队列中的输入事件进行封装。
6.根据权利要求5所述的方法,其特征在于,所述用于获取输入事件的API包括DirectInput接口;在所述的根据所述云应用端设置的输入事件数据格式对所述远程输入事件队列中的输入事件进行封装之前,所述方法还包括:
通过HOOK的方式记录所述DirectInput接口中设置数据格式SetDataFormat函数所设置的输入事件数据格式。
7.一种基于云的输入处理装置,其特征在于,云应用端设置DirectInput接口的工作模式,所述云应用端启动后通过Hook DirectInput接口的SetCooperativeLevel函数,将所述DirectInput接口设置为非独占和后台工作模式;云应用端记录设置的输入事件数据格式;所述云应用端重定向DirectInput接口对输入事件的获取操作;所述云应用端绑定网络端口,等待客户端连接;
所述装置包括:
队列更新模块,设置为响应于用户在客户端的输入,云服务器的云应用端根据来自所述客户端的远程输入消息更新所述云应用端的远程输入事件队列;
事件获取模块,设置为将用于获取输入事件的应用程序接口API获取输入事件的操作重定向至所述远程输入事件队列;以及
事件处理模块,设置为从所述远程输入事件队列获取来自所述客户端的输入事件,所述云服务器的消息处理逻辑对所述输入事件进行处理。
8.一种云服务器,与运行客户端的用户设备通信,用于运行云应用端、接收所述客户端发送的输入事件、并将所述云应用端响应所述输入事件产生的输出图像发送至所述客户端,其特征在于,所述云服务器包括根据权利要求7所述的基于云的输入处理装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711487366.6/1.html,转载请声明来源钻瓜专利网。