一种应用级检测可输入状态的方法技术

技术编号:39948814 阅读:27 留言:0更新日期:2024-01-08 23:08
本发明专利技术公开了一种应用级检测可输入状态的方法,编写一个注入程序,调用系统接口SetWindowsHookEx,指定WH_GETMESSAGE消息类型和要注入的dll句柄,编写一个注入dll,通过detour注入框架,注册并且自定义实现需要修改的系统接口,然后在程序调用输入法时,会自动获取到注册过的接口的调用通知回调,自定义实现ImmAssociateContextEx接口,注入dll获取可输入状态后将结果写入共享内存,将获取到的值发送给客户端,实现云端本地输入法同步功能,实现单独检测每个应用的可输入状态,而且对于不使用标准的方式设置鼠标或者插入符状态的应用也可以兼容检测到,极大提升了用户体验,能够单独检测每个应用输入可输入状态的方法,以提升云化服务的兼容性和功能体验。

【技术实现步骤摘要】

本专利技术属于应用级检测可输入状态,具体涉及一种应用级检测可输入状态的方法


技术介绍

1、在windows云桌面场景中,一般支持系统级别的输入法可输入状态检测。用户端获取到可输入通知后,可以打开本地输入法,然后同步本地输入内容到远程云桌面,提升输入体验,此类技术,有2种实现方式:1、通过getcursorinfo获取系统光标输入状态来判断;2、通过getguithreadinfo获取插入符状态来判断。

2、目前在windows云桌面中,如果某个应用没有采用标准的方式设置光标输入或者插入符状态,就会导致获取系统输入法可输入状态失败,另外如果云服务是一个多应用构架,每个应用对应一个用户,需要对每个应用都实现可输入状态检测时也不支持,降低了云化服务的兼容性和功能体验,因此我们需要提供一种应用级检测可输入状态的方法。


技术实现思路

1、本专利技术的目的在于提供一种应用级检测可输入状态的方法,可以实现单独检测每个应用的可输入状态,而且对于不使用标准的方式设置鼠标或者插入符状态的应用也可以兼容检测到,极大提本文档来自技高网...

【技术保护点】

1.一种应用级检测可输入状态的方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种应用级检测可输入状态的方法,其特征在于:所述在步骤1中,由于windows所有事件都是消息驱动,通过监控桌面程序的消息队列,可以实现全局注入dll,其中,SetWindowsHookEx可以指定对某一类消息进行监听,并且还能触发相应的回调函数。

3.根据权利要求2所述的一种应用级检测可输入状态的方法,其特征在于:所述SetWindowsHookEx函数,这个函数能够实现优先拦截提交给特定窗口的信息,并进行拦截者需要的处理,然后再提交给窗口函数或是下一个钩子函数,函数第一个参...

【技术特征摘要】

1.一种应用级检测可输入状态的方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种应用级检测可输入状态的方法,其特征在于:所述在步骤1中,由于windows所有事件都是消息驱动,通过监控桌面程序的消息队列,可以实现全局注入dll,其中,setwindowshookex可以指定对某一类消息进行监听,并且还能触发相应的回调函数。

3.根据权利要求2所述的一种应用级检测可输入状态的方法,其特征在于:所述setwindowshookex函数,这个函数能够实现优先拦截提交给特定窗口的信息,并进行拦截者需要的处理,然后再提交给窗口函数或是下一个钩子函数,函数第一个参数为idhook,需要设置钩子的类型。

4.根据权利要求1所述的一种应用级检测可输入状态的方法,其特征在于:所述在步骤2中,在dll中实现一个导出函数lresult callback messageproc(int code,wparamwparam,lparam lparam)并在其中加上callnexthookex(null,code,wparam,lparam)作为函数实现.对应的注入程序会通过getprocaddress(hooklib,"messageproc")获取dll地址然后用setwindowshookex实现注入,获取输入法接口模块地址,使用loadlibrarya("cfgmgr32.dll")。

5.根据权利要求1所述的一种应用级检测可输入状态的方法,其特征在于:在步骤3中,所述注册需要监听的函数,通过detour框架的detour_attach接口,具体定义为immassociatecontext(hwnd hwnd,himc himc)和immassociatecontextex(hwnd hwnd,himc himc,dword dwflags)函数,注册成功后,这两个函数的调用会被重定向,执行到我们实现的代码中来。

6.根据权利要求5所述的一种应用级检测可输入状态的方法,其特征在于:所述自定义实现immassociatecon...

【专利技术属性】
技术研发人员:何震高斌邹琼周双全
申请(专利权)人:深圳市瑞云科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1