CN104932710A - 外挂输入法及外挂输入*** - Google Patents
外挂输入法及外挂输入*** Download PDFInfo
- Publication number
- CN104932710A CN104932710A CN201510341936.5A CN201510341936A CN104932710A CN 104932710 A CN104932710 A CN 104932710A CN 201510341936 A CN201510341936 A CN 201510341936A CN 104932710 A CN104932710 A CN 104932710A
- Authority
- CN
- China
- Prior art keywords
- module
- input
- plug
- terminal
- event detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及电子设备的信息处理技术,公开了一种外挂输入法及外挂输入***。本发明中,外挂输入法,包含以下步骤:用于输入文字的应用程序对终端的文字输入模块进行监控;若检测到用户在文字输入模块上的操作,则获取操作对应的编码信息;根据编码信息检索出对应的文字,并将检索出的文字输出至当前输入焦点的窗口。这样,可以在任何一个焦点窗口直接输入文字,省去每次向新的焦点窗口输入文字都要切换输入法的步骤,使用方便;同时,外挂输入***与需要文字输入的应用程序相互独立,避免了对应用程序造成影响。
Description
技术领域
本发明涉及电子设备的信息处理技术,特别涉及一种外挂输入法及外挂输入***。
背景技术
基于目前主流的输入法,包括(百度输入法,搜狗拼音输入法,QQ拼音输入法,谷歌拼音输入法)等,都是采用传统的IME(Input Method Editors,输入法编辑器)框架或者TSF(Text Service Framework)框架开发的输入法,这些输入法的主程序为动态链接库。
但是,上述的输入法,是需要应用程序(可执行程序)主动加载输入法(即动态链接库),才能进行打字输入。而且,这种输入法还存在如下缺陷:1、在每打开一个新的应用程序,都需要通过右下角的输入法语言栏切换到用户使用的输入法。2、当这个输入法因程序上的问题而崩溃时,会造成加载这个输入法的应用程序崩溃。
发明内容
本发明解决的问题在于提供一种外挂输入法及外挂输入***,可以在任何一个焦点窗口直接输入文字,省去每次向新的焦点窗口输入文字都要切换输入法的步骤,使用方便;同时,外挂输入***与需要文字输入的应用程序相互独立,避免了对应用程序造成影响。
为解决上述技术问题,本发明的实施方式提供了一种外挂输入法,包含以下步骤:
用于输入文字的应用程序对终端的文字输入模块进行监控;
若检测到用户在所述文字输入模块上的操作,则获取所述操作对应的编码信息;
根据所述编码信息检索出对应的文字,并将检索出的文字输出至当前输入焦点的窗口。
本发明的实施方式还提供了一种外挂输入***,包含:监控模块、获取模块、检索模块与输出模块;
所述监控模块,用于对终端的文字输入模块进行监控,并在检测到用户在所述文字输入模块上的操作时,触发所述获取模块;
所述获取模块,用于根据所述监控模块检测到的操作获取对应的编码信息;
所述检索模块,用于根据所述获取模块获取的编码信息检索出对应的文字;
所述输出模块,用于将所述检索模块检索出的文字输出至终端的当前输入焦点的窗口。
本发明实施方式相对于现有技术而言,进行文字输入的是一个完整的应用程序(即可执行程序),该应用程序对终端的文字输入模块进行监控,一旦检测到用户在文字输入模块上的操作,就获取该操作对应的编码信息,并根据获取的编码信息检索出对应的文字,最后,将检索出的文字输出至当前输入焦点的窗口。这样,可以在任何一个焦点窗口直接输入文字,省去每次向新的焦点窗口输入文字都要切换输入法的步骤,使用方便;同时,用于输入文字的应用程序与需要文字输入的应用程序相互独立,避免了对需要文字输入的应用程序造成影响。
另外,在所述用于输入文字的应用程序对终端的文字输入模块进行监控的步骤中,对终端的文字输入模块进行周期性监控。周期性监控可以节约能耗。
另外,在根据所述编码信息检索出对应的文字的步骤之后,且在将检索出的文字输出至当前输入焦点的窗口的步骤之前,包含以下步骤:将检索出的文字输出至检索结果的显示模块进行显示。将检索出的文字输出显示模块进行显示,以供用户检查检索结果是否符合用户需求,提高本发明实施方式的实用性。
附图说明
图1是根据本发明第一实施方式的外挂输入法的流程图;
图2是根据本发明第一实施方式中的检索结果显示示意图;
图3是根据本发明第二实施方式的外挂输入***的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明的第一实施方式涉及一种外挂输入法,具体流程如图1所示,包含以下步骤:
步骤101,创建监控模块。
在本实施方式中,终端为电脑,电脑的操作***为Windows,文字输入模块为键盘,监控模块为键盘钩子。在本步骤中,用于输入文字的应用程序可以通过调用Windows底层的应用程序接口(API)创建键盘钩子。
键盘钩子的本质是一段用以捕获在任意窗口上的键盘输入的程序,通过***调用挂入***。其中,键盘钩子的具体实现程序如下:
HHOOK hExeHook=SetWindowsHookEx(WH_KEYBOARD_LL,HOOKPROC(KeyboardHookAll),hInstance,0)。
其中,HHOOK为Windows的键盘钩子句柄,hExeHook为保存外挂输入法的键盘钩子句柄变量,SetWindowsHookEx为Windows***创建钩子函数,WH_KEYBOARD_LL为Windows***创建钩子类型为键盘钩子,HOOKPROC(KeyboardHookAll)为外挂创建Windows键盘钩子的回调函数,hInstance为外挂应用程序的当前实例的句柄。
步骤102,用于输入文字的应用程序利用监控模块对文字输入模块进行监控。
在本实施方式中,用于输入文字的应用程序通过键盘钩子回调函数,对终端的键盘操作进行监控。一旦用户在键盘上进行了操作,键盘钩子就可以捕获用户在键盘上的操作,这时,键盘钩子回调函数的值就会发生变化。其中,键盘钩子回调函数的值与用户在键盘上的操作一一对应。
在本实施方式中,对终端的键盘进行周期性监控。采用周期性监控键盘,而非实时监控键盘,可以节约能耗。其中,对终端的键盘进行监控的周期可以经试验获取。
步骤103,根据监控结果判断是否检测到用户在文字输入模块上的操作。若是,则执行步骤104,否则,返回执行步骤102。具体而言,在监控结果中,若键盘钩子回调函数的值未发生变化,则表明未检测到用户在键盘上的操作,否则,表明检测到用户在键盘上的操作。
步骤104,获取操作对应的编码信息。在本实施方式中,用于输入文字的应用程序根据键盘钩子回调函数的值就可以获知用户在键盘上的操作对应的编码信息。其中,键盘上每一个按键被按下都对应一个编码信息,若干个按键依次被按下,则对应一串编码信息。
步骤105,根据编码信息检索出对应的文字。用于输入文字的应用程序在得到编码信息后,便根据编码信息从预设的词库中检索出对应的文字,其中,一个编码信息对应一个或多个字、词。比如,若用于输入文字的应用程序安装的是与拼音对应的词库,当用户在键盘上按下“wannengwubishurufa”时,用于输入文字的应用程序根据“wannengwubishurufa”的编码信息,从词库中检索出的文字为“万能五笔输入法、万能五笔、万能、皖能、玩、完”等。
当然,在实际应用时,用于输入文字的应用程序也可以安装与其他输入规则对应的词库,比如,五笔输入规则。
步骤106,将检索出的文字输出至检索结果的显示模块进行显示。具体如图2所示,将检索出的文字输出至显示模块进行显示,可以供用户从检索结果中选出符合用户需求的文字,或者,若检索结果中不存在符合用户需求的文字,供用户修改在键盘上的操作进而修改检索结果,最终选出符合用户需求的文字。
步骤107,将用户根据显示的检索结果选出的文字输出至当前输入焦点的窗口。用于输入文字的应用程序通过输入焦点技术获取当前输入焦点,并将用户选出的文字输出至当前输入焦点的窗口。这样,在向当前输入焦点的窗口输入文字时,不必再切换输入法,可以直接输入文字,使用方便。
在实际应用时,在安装本实施方式中用于输入文字的应用程序时,该应用程序会自动创建监控模块。当在终端中打开上述用于输入文字的应用程序后,监控模块便开始周期性监控终端的键盘。这意味着,只要打开一次用于输入文字的应用程序,在向当前焦点窗口输入文字时,就不需要切换输入法,可以直接输入文字,使用方便,用户体验佳。若用户将用于输入文字的应用程序设置为开机自动启动的话,用户一开启终端,用于输入文字的应用程序便会自动启动,用户不必每次开机后主动打开该应用才程序,就可以直接向当前输入焦点的窗口输入文字,使用更方便,进一步提升了用户体验。
而且,用于输入文字的应用程序与需要文字输入的应用程序是分别独立,二者之中,一个程序的崩溃不会引起另一个程序的崩溃,用户体验佳。
与现有技术相比,进行文字输入的是一个完整的应用程序(即可执行程序),该应用程序对终端的键盘进行监控,一旦检测到用户在键盘上的操作,就获取该操作对应的编码信息,并根据获取的编码信息检索出对应的文字,最后,将检索出的文字输出至当前输入焦点的窗口。这样,可以在任何一个焦点窗口直接输入文字,省去每次向新的焦点窗口输入文字都要切换输入法的步骤,使用方便;同时,用于输入文字的应用程序与需要文字输入的应用程序相互独立,避免了对需要文字输入的应用程序造成影响。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第二实施方式涉及一种外挂输入***,如图3所示,包含:创建模块、监控模块、获取模块、检索模块、显示模块与输出模块。
创建模块,用于创建监控模块。
监控模块,用于对终端的文字输入模块进行监控,并在检测到用户在文字输入模块上的操作时,触发获取模块。而且,监控模块对终端的文字输入模块进行周期性监控。在本实施方式中,监控模块为键盘钩子。键盘钩子,用于通过键盘钩子回调函数,对终端的键盘操作进行监控。
获取模块,用于根据监控模块检测到的操作获取对应的编码信息。
检索模块,用于根据获取模块获取的编码信息检索出对应的文字。
显示模块,用于显示检索模块检索出的文字。
输出模块,用于将检索模块检索出的文字输出至终端的当前输入焦点的窗口。
不难发现,本实施方式为与第一实施方式相对应的***实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种外挂输入法,其特征在于,包含以下步骤:
用于输入文字的应用程序对终端的文字输入模块进行监控;
若检测到用户在所述文字输入模块上的操作,则获取所述操作对应的编码信息;
根据所述编码信息检索出对应的文字,并将检索出的文字输出至当前输入焦点的窗口。
2.根据权利要求1所述的外挂输入法,其特征在于,在所述用于输入文字的应用程序对终端的文字输入模块进行监控的步骤之前,包含以下步骤:
创建监控模块;
在所述用于输入文字的应用程序对终端的文字输入模块进行监控的步骤中,
所述应用程序利用所述监控模块对所述文字输入模块进行监控。
3.根据权利要求2所述的外挂输入法,其特征在于,在所述创建监控模块的步骤中,
通过调用终端***底层的应用程序接口,创建键盘钩子;
在所述应用程序利用所述监控模块对所述文字输入模块进行监控的步骤中,
通过键盘钩子回调函数,对终端的键盘操作进行监控。
4.根据权利要求1所述的外挂输入法,其特征在于,在所述用于输入文字的应用程序对终端的文字输入模块进行监控的步骤中,
对终端的文字输入模块进行周期性监控。
5.根据权利要求1所述的外挂输入法,其特征在于,在根据所述编码信息检索出对应的文字的步骤之后,且在将检索出的文字输出至当前输入焦点的窗口的步骤之前,包含以下步骤:
将检索出的文字输出至检索结果的显示模块进行显示。
6.一种外挂输入***,其特征在于,包含:监控模块、获取模块、检索模块与输出模块;
所述监控模块,用于对终端的文字输入模块进行监控,并在检测到用户在所述文字输入模块上的操作时,触发所述获取模块;
所述获取模块,用于根据所述监控模块检测到的操作获取对应的编码信息;
所述检索模块,用于根据所述获取模块获取的编码信息检索出对应的文字;
所述输出模块,用于将所述检索模块检索出的文字输出至终端的当前输入焦点的窗口。
7.根据权利要求6所述的外挂输入***,其特征在于,还包含创建模块;
所述创建模块,用于创建所述监控模块。
8.根据权利要求7所述的外挂输入***,其特征在于,所述监控模块为键盘钩子;
所述创建模块,用于通过调用终端***底层的应用程序接口,创建键盘钩子;
所述键盘钩子,用于通过键盘钩子回调函数,对终端的键盘操作进行监控。
9.根据权利要求6所述的外挂输入***,其特征在于,所述监控模块,用于对终端的文字输入模块进行周期性监控。
10.根据权利要求6所述的外挂输入***,其特征在于,还包含显示模块;
所述显示模块,用于显示所述检索模块检索出的文字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510341936.5A CN104932710A (zh) | 2015-06-18 | 2015-06-18 | 外挂输入法及外挂输入*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510341936.5A CN104932710A (zh) | 2015-06-18 | 2015-06-18 | 外挂输入法及外挂输入*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104932710A true CN104932710A (zh) | 2015-09-23 |
Family
ID=54119900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510341936.5A Pending CN104932710A (zh) | 2015-06-18 | 2015-06-18 | 外挂输入法及外挂输入*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104932710A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741790A (zh) * | 2016-08-14 | 2018-02-27 | 天脉聚源(北京)科技有限公司 | 一种Android移动终端处理文字输入框的方法和*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071397A (zh) * | 2007-03-30 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 字符输出方法和装置 |
CN101882007A (zh) * | 2010-06-13 | 2010-11-10 | 北京搜狗科技发展有限公司 | 一种基于输入界面进行信息输入和执行的方法、装置 |
CN102314374A (zh) * | 2010-06-30 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种防止目标进程崩溃的输入方法和设备 |
CN103207739A (zh) * | 2012-01-13 | 2013-07-17 | 北京搜狗科技发展有限公司 | 一种智能切出输入法的方法和装置 |
-
2015
- 2015-06-18 CN CN201510341936.5A patent/CN104932710A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071397A (zh) * | 2007-03-30 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 字符输出方法和装置 |
CN101882007A (zh) * | 2010-06-13 | 2010-11-10 | 北京搜狗科技发展有限公司 | 一种基于输入界面进行信息输入和执行的方法、装置 |
CN102314374A (zh) * | 2010-06-30 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种防止目标进程崩溃的输入方法和设备 |
CN103207739A (zh) * | 2012-01-13 | 2013-07-17 | 北京搜狗科技发展有限公司 | 一种智能切出输入法的方法和装置 |
Non-Patent Citations (6)
Title |
---|
BLACK BEAST: "键盘监控之输入法拦截", 《黑客防线》 * |
周航慈: "《基于嵌入式实时操作***的程序设计技术》", 31 January 2011 * |
孔祥亮: "《Office 2010电脑办公入门与实战》", 28 February 2015 * |
毛德操: "《Windows内核情景分析》", 31 May 2009 * |
维尼拉·木沙江 等: "维文Unicode在线处理技术与实现", 《新疆大学学报》 * |
阿布力米提·阿不都热依木: "WindowsXP维吾尔文平台的研究", 《计算机工程与应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741790A (zh) * | 2016-08-14 | 2018-02-27 | 天脉聚源(北京)科技有限公司 | 一种Android移动终端处理文字输入框的方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10824691B2 (en) | Page rendering method, device, and data storage medium | |
CN107562556B (zh) | 故障的恢复方法、恢复装置及存储介质 | |
CN111124379B (zh) | 页面生成方法、装置、电子设备及存储介质 | |
JP2021101361A (ja) | イベントトピックの生成方法、装置、機器及び記憶媒体 | |
CN108255837B (zh) | 一种sql解析器及方法 | |
CN103268361A (zh) | 网页中隐藏url的提取方法、装置和*** | |
CN111552633A (zh) | 接口的异常调用测试方法、装置、计算机设备及存储介质 | |
CN112286485A (zh) | 通过语音控制应用的方法、装置、电子设备与存储介质 | |
CN110532159A (zh) | 数据监听方法、装置、设备及计算机可读存储介质 | |
Hallé et al. | Testing web applications through layout constraints | |
CN107656933A (zh) | 一种语音播报方法及装置 | |
CN114218052B (zh) | 一种业务交互图生成方法、装置、设备及存储介质 | |
CN113626017B (zh) | 异构程序的分析方法、装置、计算机设备和存储介质 | |
CN104932710A (zh) | 外挂输入法及外挂输入*** | |
CN109389972B (zh) | 语义云功能的质量测试方法、装置、存储介质和设备 | |
CN115469849B (zh) | 一种业务处理***、方法、电子设备和存储介质 | |
CN105094363A (zh) | 表情符号的处理方法及装置 | |
CN115481025A (zh) | 自动化测试的脚本录制方法、装置、计算机设备及介质 | |
CN106991144B (zh) | 一种定制数据爬取工作流的方法及*** | |
CN111338609B (zh) | 信息获取方法、装置、存储介质及终端 | |
CN104267843A (zh) | 基于手持设备端的用于代码设计的智能化输入***与方法 | |
CN113468050A (zh) | 基于画布的测试方法、装置、计算机设备及存储介质 | |
CN114546839A (zh) | 冗余代码分析方法、装置、电子设备、存储介质及产品 | |
Nabuco et al. | Inferring ui patterns with inductive logic programming | |
CN107977304A (zh) | 一种***调试方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150923 |
|
RJ01 | Rejection of invention patent application after publication |