CN108037972B - 一种完全隐藏光标的方法及装置 - Google Patents
一种完全隐藏光标的方法及装置 Download PDFInfo
- Publication number
- CN108037972B CN108037972B CN201711338704.XA CN201711338704A CN108037972B CN 108037972 B CN108037972 B CN 108037972B CN 201711338704 A CN201711338704 A CN 201711338704A CN 108037972 B CN108037972 B CN 108037972B
- Authority
- CN
- China
- Prior art keywords
- cursor
- setting
- message
- transparent
- function
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及座席管理系统领域,具体涉及一种完全隐藏光标的方法及一种完全隐藏光标的装置。本发明公开了一种完全隐藏光标的方法,包括系统向应用程序发送设置光标的消息后的步骤:截获光标设置过程,将光标设置成透明样式。本方法针对应用程序在其窗口中改变光标样式的情况,截获系统发送的消息或者截获应用程序接收到消息后调用的系统设置光标的API函数,该方法能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
Description
技术领域
本发明涉及座席管理系统领域,具体涉及一种完全隐藏光标的方法及装置。
背景技术
在座席管理系统中,通过隐藏信号源端光标可以在保证系统正常操控的前提下,降低座席管理系统的成本及鼠标操作的延时感。例如,当一套座席的键鼠设备在多台信号源端设备之间切换进行控制时,可以将当前被键鼠设备操作的信号源端设备的鼠标指针隐藏,显示座席端的鼠标指针并进行操控,通过隐藏光标的方法能够有效地降低座席管理系统的成本,因为座席管理系统的成本投入主要是在高性能硬件方面,使用高性能硬件的原因是为了解决因图像编解码等引入的高延时问题。鼠标操作的延时问题将会影响到操作人员使用本地鼠标设备控制远程业务系统的准确度、工作效率及体验。隐藏光标的方法可以使得不依赖高性能硬件的投入便达到准确定位光标的目的,提高了用户体验。光标的显示与隐藏无缝切换降低了鼠标操作的延时感。
现有技术中,隐藏光标的技术方案是通过设置系统的光标为透明样式来达成的,但是该方法在某些应用程序窗口中却不能将光标隐藏,光标仍然会显示出来,给用户体验带来了极大地影响。
发明内容
为解决上述技术问题,本发明提供一种完全隐藏光标的方法和装置,能在任何应用程序窗口中有效地隐藏光标。
一种完全隐藏光标的方法,其特征在于,包括系统向应用程序发送设置光标的消息后的步骤:截获光标设置过程,将光标设置成透明样式。
一般情况下,当光标进入应用程序窗口范围时,操作系统会向应用程序发送设置光标的消息,应用程序接受到设置光标的消息后,再将光标正常显示出来。这当中包含了两个阶段,第一个阶段是操作系统向应用程序发送设置光标的消息到应用程序接收到所述设置光标的消息,第二阶段是应用程序接收到系统发来的设置光标的消息后正常显示光标的过程。这两个阶段合在一起,称作光标设置过程。任一阶段被截获,都能达到本发明的效果,截获之后可以通过自定义的代码等方法将光标设置为透明样式。现有技术中在某些应用程序窗口不能将光标隐藏,本方法针对应用程序在其窗口中改变光标样式的情况,截获光标设置过程,能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
一种完全隐藏光标的装置,其特征在于,所述装置包括截获单元与光标透明设置单元,所述截获单元用于在系统向应用程序发送设置光标的消息之后截获光标设置过程,光标透明设置单元用于截获后将光标设置成透明样式。
一般情况下,当光标进入应用程序窗口范围时,操作系统会向应用程序发送设置光标的消息,应用程序接受到设置光标的消息后,再将光标正常显示出来。这当中包含了两个阶段,第一个阶段是操作系统向应用程序发送设置光标的消息到应用程序接收到所述设置光标的消息,第二阶段是应用程序接收到系统发来的设置光标的消息后正常显示光标的过程。这两个阶段合在一起,称作光标设置过程。任一阶段被截获单元截获,都能达到本发明的效果,截获单元截获之后,光标透明设置单元可以通过自定义的代码等方法将光标设置为透明样式。现有技术中在某些应用程序窗口不能将光标隐藏,本装置针对应用程序在其窗口中改变光标样式的情况,截获光标设置过程,能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至4中的任意一项所述方法的步骤。
附图说明
图1为本发明方法的流程图
图2为本发明方法的一种实施方法的流程图
图3为本发明方法的另一种实施方法的流程图。
具体实施方式
以下结合附图对本发明进行进一步的说明。
如图1所示,一种完全隐藏光标的方法,包括系统向应用程序发送设置光标的消息后的步骤:截获光标设置过程,将光标设置成透明样式。
一般情况下,当光标进入应用程序窗口范围时,操作系统会向应用程序发送设置光标的消息,应用程序接受到设置光标的消息后,再将光标正常显示出来。这当中包含了两个阶段,第一阶段是操作系统向应用程序发送设置光标的消息到应用程序接收到所述设置光标的消息,第二阶段是应用程序接收到系统发来的设置光标的消息后正常显示光标的过程。这两个阶段合在一起,称作光标设置过程。任一阶段被截获,都能达到本发明的效果,截获之后可以通过自定义的代码等方法将光标设置为透明样式。现有技术中在某些应用程序窗口不能将光标隐藏,本方法针对应用程序在其窗口中改变光标样式的情况,截获光标设置过程,能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。实例一是在第一阶段进行截获的方法,实施例二是在第二阶段进行截获的方法。
实施例一
一种完全隐藏光标的方法,包括系统向应用程序发送设置光标的消息后的步骤:截获光标设置过程,将光标设置为透明样式。
具体地,在应用程序接收到系统发送的设置光标消息前,步骤如图2所示:
S11.截获系统发送的消息。当光标进入应用程序窗口范围时,操作系统即会发送一个设置光标的消息。在应用程序接收到所述光标消息前,通过步骤S1将其截获并进行下一步处理,不会被发送到应用程序中。
S12.判断所述消息是否为设置光标的消息。步骤S1为实时截获系统发出的消息。其中,可能光标并没有进入应用程序窗口的范围,系统发出的消息并不是设置光标的消息,所以在截获之前有必要对系统发出的消息是否为设置光标的消息进行判断。
S13.执行设置光标为透明样式的代码,返回响应,不再传递所述消息。
经由步骤S2判断,当所述消息为设置光标消息时,执行将光标设置为透明样式的代码,并返回正确响应,即将光标设置为透明样式,不再传递所述消息。
S14.继续传递所述消息。
经由步骤S2判断,当所述消息不是设置光标消息时,则可以继续传递所述消息。
具体地,截获系统发送的消息的步骤包括:在系统中注册设置光标消息的全局钩子,所述全局钩子截获系统发送的消息。在所述全局钩子的处理过程中,将光标设置为透明样式;返回所述光标消息的处理结果给系统。全局钩子是系统钩子的一种,当指定的一些消息被系统中任何应用程序所处理时,这个钩子就被调用。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。当应用程序在其窗口中调用系统API,改变光标样式时,操作系统会产生一个设置光标的消息,该消息将被注册的全局钩子截获而不会传递到应用程序中。
实施例一中的方法通过截获系统发送的消息,使设置光标的消息不被传到应用程序中,另外再执行设置光标为透明样式的代码,返回响应,将光标设置为透明样式。本方法能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
实施例二
一种完全隐藏光标的方法,包括系统向应用程序发送设置光标的消息后的步骤:截获光标设置过程,将光标设置为透明样式。
具体地,在应用程序接收到系统发送的设置光标消息后,光标正常显示之前,步骤如图3所示:
S21.获取系统设置光标的API函数地址;
S22.将系统设置光标的API函数地址替换为设置光标为透明样式的函数的地址
S23.通过HOOK函数钩住系统设置光标的API函数,HOOK函数调用设置光标为透明样式的函数;
S24.在所述设置光标为透明样式的函数中调用系统设置光标的API函数,以将光标设置为透明样式。
当应用程序在其窗口中调用系统设置光标的API函数,用以改变光标样式时,由于HOOK函数钩住了系统设置光标的API函数,实际上应用程序调用的是自定义的设置光标为透明样式的函数,阻止了光标的正常显示过程,从而实现光标的完全隐藏。
实施例二的方法截获发生在光标正常显示的过程,在应用程序调用系统设置光标的API函数时被截获,而调用自定义的设置光标为透明样式的函数。该方法能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
实施例三
一种完全隐藏光标的装置,包括截获单元、判断单元、光标透明设置单元、消息传递单元,截获单元,用于在应用程序接收到系统发送的设置光标消息前截获系统发送的消息;判断单元,用于判断所述消息是否为设置光标的消息;光标透明设置单元,用于当所述消息为设置光标的消息时将光标设置为透明样式;消息传递单元,用于当所述消息为设置光标的消息时,不再传递所述消息,当所述消息不为设置光标的消息时,继续传递所述消息。
截获单元截获系统产生的消息,具体地,截获单元用于向系统注册设置光标消息的全局钩子,所示全局钩子截获系统发送的消息。在所述全局钩子的处理过程中,将光标设置为透明样式;返回所述光标消息的处理结果给系统。当应用程序在其窗口中调用系统API,改变光标样式时,操作系统会产生一个设置光标的消息,该消息将被注册的全局钩子截获而不会传递到应用程序中。
实施例三中的装置通过截获系统发送的消息,使设置光标的消息不被传到应用程序中,另外再执行设置光标为透明样式的代码,返回响应,将光标设置为透明样式。本方法能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
实施例四
一种完全隐藏光标的装置,包括截获单元、光标透明设置单元,所述截获单元用于在应用程序接收到系统发送的设置光标消息后获取系统设置光标的API函数地址;将系统设置光标的API函数地址替换为设置光标为透明样式的函数的地址;通过HOOK函数钩住系统设置光标的API函数,HOOK函数调用设置光标为透明样式的函数;所述光标透明设置单元用于在所述设置光标为透明样式的函数中调用系统设置光标的API函数,以将光标设置为透明样式。
当应用程序在其窗口中调用系统设置光标的API函数,用以改变光标样式时,由于HOOK函数钩住了系统设置光标的API函数,实际上应用程序调用的是自定义的设置光标为透明样式的函数,阻止了光标的正常显示过程,从而实现光标的完全隐藏。
实施例四的装置截获发生在光标正常显示的过程,在应用程序调用系统设置光标的API函数时被截获,而调用自定义的设置光标为透明样式的函数。该装置能在任何应用程序中有效地隐藏光标,解决了光标不能完全隐藏的问题,提高了用户体验。
实施例五
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至4中的任意一项所述方法的步骤。
本文所使用的术语“计算机可读介质”意味着可以存储指令以由计算机或其它计算设备使用或者执行的任何介质,所述计算设备包括但不限于便携式计算机磁盘、硬盘驱动器(HDD)、随机存取存储器 (RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或者闪存、诸如压缩光盘(CD)、数字通用光盘(DVD)或蓝光TM光盘等的光盘以及固态存储设备(例如,NAND闪存或同步动态RAM(SDRAM))。计算机程序被处理器执行实现完全隐藏光标的方法。
Claims (7)
1.一种完全隐藏光标的方法,其特征在于,包括系统向应用程序发送设置光标的消息后的步骤:
截获光标设置过程,将光标设置成透明样式;
所述截获光标设置过程,将光标设置成透明样式包括应用程序接收到系统发送的设置光标消息前的步骤:
截获系统发送的消息;
判断所述消息是否为设置光标的消息,若是,将光标设置为透明样式,不再传递所述消息;若否,则继续传递所述消息。
2.根据权利要求1所述的一种完全隐藏光标的方法,所述截获系统发送的消息包括步骤:
向系统注册设置光标消息的全局钩子,所述全局钩子截获系统发送的消息。
3.根据权利要求1所述的一种完全隐藏光标的方法,所述截获光标设置过程,将光标设置成透明样式包括应用程序接收到系统发送的设置光标消息后的步骤:
获取系统设置光标的API函数地址;
将系统设置光标的API函数地址替换为设置光标为透明样式的函数的地址;
通过HOOK函数钩住系统设置光标的API函数,HOOK函数调用设置光标为透明样式的函数;
在所述设置光标为透明样式的函数中调用系统设置光标的API函数,以将光标设置为透明样式。
4.一种完全隐藏光标的装置,其特征在于,所述装置包括截获单元与光标透明设置单元,所述截获单元用于在系统向应用程序发送设置光标的消息之后截获光标设置过程,光标透明设置单元用于截获后将光标设置成透明样式;
所述装置还包括判断单元、光标透明设置单元、消息传递单元,
截获单元,用于在应用程序接收到系统发送的设置光标消息前截获系统发送的消息;
判断单元,用于判断所述消息是否为设置光标的消息;
光标透明设置单元,用于当所述消息为设置光标的消息时将光标设置为透明样式;
消息传递单元,用于当所述消息为设置光标的消息时,不再传递所述消息,当所述消息不为设置光标的消息时,继续传递所述消息。
5.根据权利要求4所述的一种完全隐藏光标的装置,其特征在于,所述截获单元用于在应用程序接收到系统发送的设置光标消息后获取系统设置光标的API函数地址;将系统设置光标的API函数地址替换为设置光标为透明样式的函数的地址;通过HOOK函数钩住系统设置光标的API函数,HOOK函数调用设置光标为透明样式的函数;所述光标透明设置单元用于在所述设置光标为透明样式的函数中调用系统设置光标的API函数,以将光标设置为透明样式。
6.根据权利要求5所述的一种完全隐藏光标的装置,其特征在于,所述截获单元用于向系统注册设置光标消息的全局钩子,所述全局钩子截获系统发送的消息。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至3中的任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711338704.XA CN108037972B (zh) | 2017-12-14 | 2017-12-14 | 一种完全隐藏光标的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711338704.XA CN108037972B (zh) | 2017-12-14 | 2017-12-14 | 一种完全隐藏光标的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108037972A CN108037972A (zh) | 2018-05-15 |
CN108037972B true CN108037972B (zh) | 2021-06-08 |
Family
ID=62103140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711338704.XA Active CN108037972B (zh) | 2017-12-14 | 2017-12-14 | 一种完全隐藏光标的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108037972B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782852A (zh) * | 2010-01-19 | 2010-07-21 | 西安华海医疗信息技术股份有限公司 | 用于医疗管理的计算机屏幕信息提取方法 |
CN106127050A (zh) * | 2016-06-29 | 2016-11-16 | 北京金山安全软件有限公司 | 一种防止系统光标被恶意修改的方法、装置及电子设备 |
CN106203079A (zh) * | 2016-07-04 | 2016-12-07 | 北京金山安全软件有限公司 | 光标处理方法、装置和终端设备 |
CN106203119A (zh) * | 2016-07-13 | 2016-12-07 | 北京金山安全软件有限公司 | 隐藏光标的处理方法、装置及电子设备 |
CN107122148A (zh) * | 2017-03-17 | 2017-09-01 | 广州视源电子科技股份有限公司 | 远程协作方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6091401A (en) * | 1997-06-02 | 2000-07-18 | Chen; Mei Yun | Device for controlling a cursor to rotate rightwards and leftwards and the method of the same |
US9298474B2 (en) * | 2004-10-06 | 2016-03-29 | International Business Machines Corporation | System and method for managing a floating window |
-
2017
- 2017-12-14 CN CN201711338704.XA patent/CN108037972B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782852A (zh) * | 2010-01-19 | 2010-07-21 | 西安华海医疗信息技术股份有限公司 | 用于医疗管理的计算机屏幕信息提取方法 |
CN106127050A (zh) * | 2016-06-29 | 2016-11-16 | 北京金山安全软件有限公司 | 一种防止系统光标被恶意修改的方法、装置及电子设备 |
CN106203079A (zh) * | 2016-07-04 | 2016-12-07 | 北京金山安全软件有限公司 | 光标处理方法、装置和终端设备 |
CN106203119A (zh) * | 2016-07-13 | 2016-12-07 | 北京金山安全软件有限公司 | 隐藏光标的处理方法、装置及电子设备 |
CN107122148A (zh) * | 2017-03-17 | 2017-09-01 | 广州视源电子科技股份有限公司 | 远程协作方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108037972A (zh) | 2018-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10554805B2 (en) | Information processing method, terminal, and computer-readable storage medium | |
EP3159803B1 (en) | Data storage method and network interface card | |
JP6377263B2 (ja) | 端末機器においてスクリーンショットサービスを提供するための方法、装置、記憶媒体及び機器 | |
US20190302985A1 (en) | Data Processing Method, and Apparatus | |
US10564889B2 (en) | Method and apparatus for processing data based on physical host | |
CN111026774A (zh) | 数据顺序同步方法、装置、计算机设备及存储介质 | |
US20190164254A1 (en) | Processor and method for scaling image | |
US20220066846A1 (en) | Method for aggregating notification messages, and electronic device | |
US10067862B2 (en) | Tracking asynchronous entry points for an application | |
WO2018210080A1 (zh) | 一种数据同步方法、装置、设备及计算机可读存储介质 | |
CN110825731A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN114748873B (zh) | 界面渲染方法、装置、设备和存储介质 | |
US10282216B2 (en) | Automatic import of third party analytics | |
US20200089512A1 (en) | Method and Apparatus for Invoking Input Method, Server, and Terminal | |
US10725693B2 (en) | Data processing method and apparatus | |
US20150067139A1 (en) | Agentless monitoring of computer systems | |
CN108037972B (zh) | 一种完全隐藏光标的方法及装置 | |
US8698822B1 (en) | Managing visual updates | |
US20220374848A1 (en) | Graphical user interface for partial amount reductions | |
JP2017533501A (ja) | ユーザアクションに応答して直接操作の有効化を決定するためのヒットテスト | |
US9942361B2 (en) | Reporting page composition data | |
CN111142820B (zh) | 一种基于多屏的远程控制方法、装置、及系统 | |
CN116662276B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US10831493B2 (en) | Hardware apparatus to measure memory locality | |
US20220337868A1 (en) | Rendering video frames for a user interface operation performed at a client device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |