一种图形用户界面的浏览器系统及方法转让专利

申请号 : CN200710105228.7

文献号 : CN101311924B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李晓霞张强邓朝明郑平

申请人 : 中兴通讯股份有限公司

摘要 :

本发明公开了一种图形用户界面的浏览器系统及方法,还公开了一种基于图形用户界面浏览器系统的交互系统,其中,所述浏览器系统包括:GUI浏览伺服器、GUI拦截器、以及GUI浏览器;本发明结合客户端/服务器和浏览器/服务器两种架构优点,易于搭建系统环境、集成使用及系统扩容,减小了客户端程序发布和维护的成本,还大大减少数据流量,提高了安全性,通过用户界面的浏览器系统对远程应用软件客户端GUI进行远程的实时浏览和操作,从而使用应用软件提供的各种功能。

权利要求 :

1.一种图形用户界面GUI的浏览器系统,其特征在于,包括:GUI浏览伺服器,GUI拦截器,以及GUI浏览器;其中,所述GUI浏览伺服器,用于配置目标GUI相关信息;接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,启动目标GUI和将所述GUI拦截器激活,并返回该GUI拦截器的信息给所述GUI浏览器;

所述GUI拦截器,用于拦截该目标GUI的窗口信息和图形界面绘制信息并将其发送给所述GUI浏览器;以及接收所述GUI浏览器传递来的操作事件的信息,并在目标GUI中进行事件派发;

所述GUI浏览器,用于接收该GUI拦截器发送来的该目标GUI的窗口信息和图形界面绘制信息,创建窗口并进行本地重现;将用户在本地重现窗口上的操作事件的信息实时发送到所述GUI拦截器。

2.如权利要求1所述的系统,其特征在于,所述GUI浏览伺服器配置的目标GUI相关信息,包括:该目标GUI的可执行文件的路径、及客户端使用运行环境路径信息。

3.如权利要求1所述的系统,其特征在于,所述GUI浏览伺服器还用于被浏览的目标GUI的生命周期进行管理,包括:启动该目标GUI,监控该目标GUI的运行情况,以及通过向该目标GUI发送断开连接命令,回收进程资源从而停止该目标GUI的运行。

4.如权利要求1所述的系统,其特征在于,所述GUI浏览器,按照收到的所述目标GUI的窗口信息创建窗口;

其中,所述目标GUI的窗口信息,包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息。

5.如权利要求1所述的系统,其特征在于,所述GUI浏览器,根据窗口ID找到对应的窗口,将接收到的图形界面绘制信息进行本地重现。

6.如权利要求1所述的系统,其特征在于,所述GUI拦截器为目标GUI的一个插件单元,与该目标GUI运行在同一进程中。

7.如权利要求1所述的系统,其特征在于,所述GUI浏览器为一个插件单元,嵌入在其他应用程序中运行。

8.一种图形用户界面GUI浏览器系统的浏览方法,应用于包括GUI浏览伺服器,GUI拦截器,以及GUI浏览器的系统,其特征在于,包括以下步骤:(1)所述GUI浏览伺服器接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,然后启动所述目标GUI,返回该GUI拦截器的信息给所述GUI浏览器;

(2)所述GUI浏览器与该GUI拦截器建立连接,GUI拦截器拦截所述目标GUI的窗口信息和图形界面绘制信息并传送给所述GUI浏览器;

(3)所述GUI浏览器将按照收到的上述信息创建窗口并进行本地重现,显示远程GUI程序的初始界面;

(4)所述GUI浏览器将用户在本地重现的窗口上的操作事件实时发送给所述GUI拦截器,所述GUI拦截器将收到的上述事件在目标GUI中进行派发,触发所述目标GUI程序界面更新;

(5)所述GUI拦截器拦截该目标GUI更新的图形界面绘制信息,并将上述拦截的信息发送给所述GUI浏览器,所述GUI浏览器进行本地重现,完成用户的远程操作。

9.如权利要求8所述的方法,其特征在于,所述步骤(1)进一步包括:

所述GUI浏览伺服器接收来自所述GUI浏览器的浏览请求,将该GUI拦截器自动拷贝到所述目标GUI使用的运行环境中,并将该GUI拦截器接口设置在所述目标GUI启动参数中,完成该GUI拦截器的注入;然后在所述GUI浏览伺服器启动所述目标GUI同时,激活所述GUI拦截器,并且所述GUI浏览伺服器与目标GUI进程中激活的GUI拦截器建立连接,用于对被浏览的目标GUI的生命周期进行管理;同时返回该GUI拦截器的IP地址及其端口信息给所述GUI浏览器。

10.如权利要求9所述的方法,其特征在于,所述GUI浏览伺服器对被浏览的目标GUI的生命周期进行管理,包括:启动该目标GUI,监控该目标GUI的运行情况,以及通过向该目标GUI发送断开连接命令,回收进程资源从而停止该目标GUI的运行。

11.如权利要求8所述的方法,其特征在于,步骤(2)中所述目标GUI的窗口信息,包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息;

步骤(3)中所述GUI浏览器按照收到的所述目标GUI的窗口信息创建窗口。

12.如权利要求8所述的方法,其特征在于,步骤(3)或步骤(5)中,所述GUI浏览器进行本地重现,包括:根据窗口ID找到对应的窗口,所述GUI浏览器将接收到的图形界面绘制信息进行本地重现。

13.一种基于图形用户界面GUI浏览器系统的交互系统,其特征在于,包括:GUI浏览器系统和客户端/服务器系统,GUI浏览器系统用于拦截目标GUI的界面窗口打开事件和绘制过程,通过GUI信息交互将其重现给用户,并将用户的操作事件派发给客户端/服务器系统,客户端/服务器系统用于完成业务信息的交互。

14.如权利要求13所述的系统,其特征在于,所述GUI浏览器系统,包括:

所述GUI浏览伺服器,用于配置目标GUI相关信息;接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,启动目标GUI和将所述GUI拦截器激活,并返回该GUI拦截器的信息给所述GUI浏览器;

所述GUI拦截器,用于拦截该目标GUI的窗口信息和图形界面绘制信息并将其发送给所述GUI浏览器;以及接收所述GUI浏览器传递来的操作事件的信息,并在目标GUI即C/S系统的应用程序客户端中进行事件派发;

所述GUI浏览器,用于接收该GUI拦截器发送来的该目标GUI的窗口信息和图形界面绘制信息,创建窗口并进行本地重现;将用户在本地重现窗口上的操作事件的信息实时发送到所述GUI拦截器。

15.如权利要求14所述的系统,其特征在于,所述GUI拦截器为目标GUI的一个插件单元,与该目标GUI运行在同一进程中。

16.如权利要求14所述的系统,其特征在于,所述GUI浏览器是按照收到的所述目标GUI的窗口信息创建窗口,该窗口信息包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息;并根据窗口ID找到对应的窗口,按照接收到的图形界面绘制信息进行本地重现。

说明书 :

技术领域

本发明涉及图形界面绘制技术领域,更具体地涉及基于此技术的图形用户界面的浏览器系统及方法。

背景技术

随着计算机技术和网络技术不断发展,很多复杂的软件应用系统使用不同体系结构,传统的有C/S(Client/Server,客户端/服务器)结构和基于Web B/S(Browser/Server,浏览器/服务器)结构两种。
C/S结构如图1B,Client作为前端是通过GUI(Graphics User Interface,图形用户界面)界面接受用户请求,前端Client并向后端Server提出请求,由Server将请求结果返回。C/S结构技术上很成熟,具有交互性强、安全性好、响应速度快、能够处理复杂的业务逻辑等显著特点。实践应用中这种结构也有很多缺点,主要有如下几点:
1)此结构的软件专用性强,在特定应用中需要使用特定的客户端软件,通用性、兼容性差,导致升级频繁;
2)此结构的每台客户机都需要安装相应的客户端程序,分布功能弱,导致客户端程序发布、维护、管理和升级难度增大;
3)此结构软件在处理复杂的业务时,导致客户端和服务端之间数据通信量增加,对整个系统通讯开销愈来愈高。
B/S结构如图1A,基于Web B/S架构相比于C/S结构具有易用性好、分布性强、应用内容无安装性等特点。用户不会因为Web服务器的升级而更新Web浏览器,便可以在第一时间获得最新的服务,维护人员不再为程序的维护工作奔波于每个客户机之间。但是从实际的应用中,这种结构也暴露出许多不足之处,具体有下面几个方面:
1)这种结构的浏览器能够进行网页浏览,但是应用在复杂应用系统
(如:电信网络管理系统)时,许多功能实现困难甚至无法实现;
2)这种结构采用的通讯协议可靠性低,对于安全性要求高的系统是非常不利的;
3)这种结构处理大数据量访问能力差。

发明内容

本发明所要解决的技术问题在于提供了一种图形用户界面的浏览器系统及方法,结合C/S和B/S两种架构优点,通过用户界面的浏览器系统对远程应用软件客户端GUI进行远程的实时浏览和操作,从而使用应用软件提供的各种功能。
为了解决上述技术问题,本发明提供了一种图形用户界面GUI的浏览器系统,包括:GUI浏览伺服器,GUI拦截器,以及GUI浏览器;其中,
所述GUI浏览伺服器,用于配置目标GUI相关信息;接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,启动目标GUI和将所述GUI拦截器激活,并返回该GUI拦截器的信息给所述GUI浏览器;
所述GUI拦截器,用于拦截该目标GUI的窗口信息和图形界面绘制信息并将其发送给所述GUI浏览器;以及接收所述GUI浏览器传递来的操作事件的信息,并在目标GUI中进行事件派发;
所述GUI浏览器,用于接收该GUI拦截器发送来的该目标GUI的窗口信息和图形界面绘制信息,创建窗口并进行本地重现;将用户在本地重现窗口上的操作事件的信息实时发送到所述GUI拦截器;
进一步的,本发明所述的系统,其中,所述GUI浏览伺服器配置的目标GUI相关信息,包括:该目标GUI的可执行文件的路径、及客户端使用运行环境路径信息;
进一步的,本发明所述的系统,其中,所述GUI浏览伺服器还用于被浏览的目标GUI的生命周期进行管理,包括:启动该目标GUI,监控该目标GUI的运行情况,以及通过向该目标GUI发送断开连接命令,回收进程资源从而停止该目标GUI的运行;
进一步的,本发明所述的系统,其中,所述GUI浏览器,按照收到的所述目标GUI的窗口信息创建窗口;所述目标GUI的窗口信息,包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息;
进一步的,本发明所述的系统,其中,所述GUI浏览器,根据窗口ID找到对应的窗口,将接收到的图形界面绘制信息进行本地重现;
进一步的,本发明所述的系统,其中,所述GUI拦截器为目标GUI的一个插件单元,与该目标GUI运行在同一进程中;
进一步的,本发明所述的系统,其中,所述GUI浏览器为一个插件单元,嵌入在其他应用程序中运行;
为了解决上述技术问题,本发明还提供了一种图形用户界面GUI浏览器系统的浏览方法,应用于包括GUI浏览伺服器,GUI拦截器,以及GUI浏览器的系统,包括以下步骤:
(1)所述GUI浏览伺服器接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,然后启动所述目标GUI,返回该GUI拦截器的信息给所述GUI浏览器;
(2)所述GUI浏览器与该GUI拦截器建立连接,GUI拦截器拦截所述目标GUI的窗口信息和图形界面绘制信息并传送给所述GUI浏览器;
(3)所述GUI浏览器将按照收到的上述信息创建窗口并进行本地重现,显示远程GUI程序的初始界面;
(4)所述GUI浏览器将用户在本地重现的窗口上的操作事件实时发送给所述GUI拦截器,所述GUI拦截器将收到的上述事件在目标GUI中进行派发,触发所述目标GUI程序界面更新;
(5)所述GUI拦截器拦截该目标GUI更新的图形界面绘制信息,并将上述拦截的信息发送给所述GUI浏览器,所述GUI浏览器进行本地重现,完成用户的远程操作;
本发明所述的方法,其中,所述步骤(1)进一步包括:所述GUI浏览伺服器接收来自所述GUI浏览器的浏览请求,将该GUI拦截器自动拷贝到所述目标GUI使用的运行环境中,并将该GUI拦截器接口设置在所述目标GUI启动参数中,完成该GUI拦截器的注入;然后在所述GUI浏览伺服器启动所述目标GUI同时,激活所述GUI拦截器,并且所述GUI浏览伺服器与目标GUI进程中激活的GUI拦截器建立连接,用于对被浏览的目标GUI的生命周期进行管理;同时返回该GUI拦截器的IP地址及其端口信息给所述GUI浏览器;
进一步的,本发明所述的方法,其中,所述GUI浏览伺服器对被浏览的目标GUI的生命周期进行管理,包括:启动该目标GUI,监控该目标GUI的运行情况,以及通过向该目标GUI发送断开连接命令,回收进程资源从而停止该目标GUI的运行;
进一步的,本发明所述的方法,其中,步骤(2)中所述目标GUI的窗口信息,包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息;步骤(3)中所述GUI浏览器按照收到的所述目标GUI的窗口信息创建窗口;
进一步的,本发明所述的方法,其中,步骤(3)或步骤(5)中,所述GUI浏览器进行本地重现,包括:根据窗口ID找到对应的窗口,所述GUI浏览器将接收到的图形界面绘制信息进行本地重现;
为了解决上述技术问题,本发明还提供了一种基于图形用户界面GUI浏览器系统的交互系统,其特征在于,包括:GUI浏览器系统和客户端/服务器系统,GUI浏览器系统用于拦截目标GUI的界面窗口打开事件和绘制过程,通过GUI信息交互将其重现给用户,并将用户的操作事件派发给客户端/服务器系统,客户端/服务器系统用于完成业务信息的交互;
本发明所述的系统,其中,所述GUI浏览器系统,包括:
所述GUI浏览伺服器,用于配置目标GUI相关信息;接收来自GUI浏览器的浏览请求,向目标GUI注入所述GUI拦截器,启动目标GUI和将所述GUI拦截器激活,并返回该GUI拦截器的信息给所述GUI浏览器;
所述GUI拦截器,用于拦截该目标GUI的窗口信息和图形界面绘制信息并将其发送给所述GUI浏览器;以及接收所述GUI浏览器传递来的操作事件的信息,并在目标GUI即C/S系统的应用程序客户端中进行事件派发;
所述GUI浏览器,用于接收该GUI拦截器发送来的该目标GUI的窗口信息和图形界面绘制信息,创建窗口并进行本地重现;将用户在本地重现窗口上的操作事件的信息实时发送到所述GUI拦截器;
进一步的,本发明所述的系统,其中,所述GUI拦截器为目标GUI的一个插件单元,与该目标GUI运行在同一进程中;
进一步的,本发明所述的系统,其中,所述GUI浏览器是按照收到的所述目标GUI的窗口信息创建窗口,该窗口信息包括:该目标GUI中窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息;并根据窗口ID找到对应的窗口,按照接收到的图形界面绘制信息进行本地重现。
本发明的图形用户界面浏览器系统克服了C/S和B/S两种架构中的诸多缺点,结合了两者的优点,得到有益效果如下:
1)本发明采用浏览远程GUI图形图像的系统具有高度复用性,复用性指的是此系统不会随着应用程序的升级而改变。并且此系统环境容易搭建,不需要对应用程序的客户端程序进行额外修改,就很容易的集成使用和扩容;
2)浏览器系统中被浏览的是C/S系统中的客户端GUI应用程序,具备了C/S系统的优点,例如:GUI应用程序的开发不像页面设计那样受限制,避免了Web浏览器应用在复杂应用系统时,许多功能实现困难甚至无法实现的缺点;
3)浏览器和拦截器之间数据传递的流量大大减少。由于只传递界面绘制结果了,比起业务逻辑数据,数据流量大大减少。
4)浏览器和拦截器之间传递的图形绘制过程信息,不包含敏感的业务信息,所以安全性大大提高;
5)浏览器系统中不再像C/S系统每台客户机都需要安装相应的客户端程序,而是在每台客户机上安装浏览器程序。这样当应用软件的客户端升级时,维护人员不用跑到每一台安装客户端的客户机上进行维护,仅仅更新被浏览的客户机上的应用程序即可,浏览器不必升级照常使用,减小了客户端程序发布和维护的成本。

附图说明

图1A是现有技术中基于Web的浏览器/服务器体系结构图;
图1B是现有技术中客户端/服务器体系结构图;
图2是本发明实施例中的二级交互系统结构图;
图3是本发明实施例中图形用户界面的浏览器系统各个组成单元结构图;
图4是本发明实施例中的浏览器系统用户浏览请求功能的系统流程图;
图5是本发明实施例中的浏览器系统用户远程浏览/操作功能的系统流程图。

具体实施方式

下面结合附图以JAVA语言为基础对技术方案的实施作进一步的详细描述。
如图2所示,为本发明实施例中的二级交互系统结构图。本技术方案建立了一个二级的交互系统,第一级是GUI浏览器系统,第二级是C/S系统;GUI浏览器系统用于拦截目标GUI的界面窗口打开事件和图形界面绘制过程,接收其GUI数据并重现给用户端,并可发送操作请求,其交互的数据是GUI信息;用户通过第一级的GUI浏览器系统与目标GUI即应用程序客户端的交互,将用户的操作事件派发给C/S系统;C/S系统用于完成业务信息的交互,其应用程序客户端与应用程序服务器按传统的方式进行交互,客户端将用户操作请求发送到服务器并根据服务器返回的信息进行处理,更新其GUI界面。
如图3所示,为本发明实施例中图形用户界面浏览器系统各个组成单元结构图,包括:GUI浏览伺服器24,GUI拦截器22,以及GUI浏览器21,其中,
GUI浏览器21:是JAVA开发独立运行的应用,安装于各个客户机上直接面向用户使用。GUI浏览器21向GUI浏览伺服器24发送浏览请求,与GUI拦截器22建立界面信息交互通道。GUI浏览器21的主要功能是接收GUI拦截器22发送的拦截目标GUI 23的窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标信息,和窗口界面的图形界面绘制信息,进行目标GUI 23的GUI界面的本地重现。并向GUI拦截器22发送键盘、鼠标操作信息。
GUI浏览伺服器24:是独立运行的应用程序,可和目标GUI 23运行于同一台机器上。负责配置目标GUI 23相关信息,主要包括JAVA GUI应用软件客户端程序的可执行文件的路径、客户端使用JRE(JAVA RUNENTIRONMENT,java运行环境)路径等。主要功能是在接收到GUI浏览器21发送来的浏览请求时,GUI浏览伺服器24自动在目标GUI 23中注入GUI拦截器22,并启动目标GUI 23的同时激活GUI拦截器22,返回GUI拦截器22的地址和端口信息,使GUI拦截器22与GUI浏览器21成功建立界面交互通道,进而交互界面、操作信息。
GUI拦截器22:被启动的目标GUI 23激活后,两者在同一进程中运行。GUI拦截器22可以拦截窗口的打开、关闭、位置、大小调整、窗口ID、标题和图标事件信息,接收界面的图形界面绘制事件信息,并将这些事件信息通过网络传递给GUI浏览器21。GUI拦截器22接收来自GUI浏览器21发送的键盘、鼠标等操作信息,派发键盘、鼠标事件,这些事件触发界面更新,界面在更新的时候被GUI拦截器22拦截,传递给GUI浏览器21进行更新界面的绘制,完成对目标GUI 23的远程操作。
如图4所示,为本发明实施例中的浏览器系统用户浏览请求功能的系统流程图。具体步骤如下:
步骤301:用户使用GUI浏览器进行远程JAVA图形用户界面浏览和操作;
步骤302:GUI浏览器与GUI浏览伺服器建立网络连接;
步骤303:GUI浏览器与GUI浏览伺服器进行网络连接成功;
步骤304:在GUI浏览器与GUI浏览伺服器成功的建立连接后,GUI浏览器向GUI浏览伺服器发送浏览请求;
步骤305:GUI浏览伺服器在收到浏览请求后,把GUI拦截器注入到目标GUI中;
步骤306:注入GUI拦截器成功后,启动被浏览目标GUI界面;
步骤307:被浏览目标GUI启动的同时激活GUI拦截器;
步骤308:GUI拦截器被成功激活;
步骤309:GUI浏览伺服器与激活的GUI拦截器建立连接,以便管理被浏览目标GUI的生命周期,并回收资源;
步骤310:GUI浏览伺服器将激活的GUI拦截器IP地址和端口信息返回给GUI浏览器;
步骤311:GUI浏览器与GUI拦截器建立连接;
步骤312:GUI浏览器与激活的GUI拦截器成功建立连接;
步骤313:GUI浏览器断开与GUI浏览伺服器的连接,因为此时不需要和服务器之间进行信息交互;
步骤314:被浏览目标GUI显示初始界面;
步骤315:GUI拦截器拦截目标GUI界面窗口打开事件,将打开窗口信息(如窗口的ID、标题、图标、位置、大小等)传递给GUI浏览器;
步骤316:GUI浏览器收到打开窗口的信息,按照传递来的窗口ID、标题、图标、位置、大小等在本地创建新的窗口;
步骤317:被浏览的目标GUI显示界面元素;
步骤318:GUI拦截器成功拦截目标GUI界面元素的绘制过程,并将拦截到的图形界面绘制信息传递给GUI浏览器;
步骤319:GUI浏览器接收到图形界面绘制信息,根据窗口ID找到对应的窗口,在此窗口上绘制图形图像,呈现给用户初始的界面;
如图5所示,为本发明实施例中的浏览器系统用户远程浏览/操作功能的系统流程图。具体步骤如下:
步骤401:用户在初始的本地浏览器窗口使用用户界面提供的各种功能,也即触发鼠标和键盘操作;
步骤402:GUI浏览器本地创建的窗口向GUI拦截器发送鼠标和键盘事件;
步骤403:GUI拦截器收到鼠标和键盘事件,传递给对应的窗口进行派发,鼠标和键盘事件引起目标GUI对应窗口的界面更新;
步骤404:GUI拦截器拦截了目标GUI界面更新的图形界面绘制信息;
步骤405:GUI拦截器将拦截的界面更新的图形界面绘制信息传递给GUI浏览器;
步骤406:GUI浏览器接收到更新图形界面绘制信息,在对应的窗口上进行界面更新的图形图像绘制;
步骤407:用户可以浏览到因鼠标和键盘操作引起的更新界面,达到了操作远程图形用户界面的目的。
以上为一次用户鼠标或者键盘操作的流程图,此流程序列不断重复进行,完成了用户浏览和远程操作应用软件GUI界面,达到使用客户端提供的各项功能。
应当理解的是,对本发明技术所属领域的普通技术人员来说,可以根据本发明的技术方案及其构思进行相应的等同改变或替换,而所有这些改变或替换,都应属于本发明权利要求的保护范围。
如在另一实施方式中,仅仅只有GUI程序,没有S服务器,GUI浏览器系统一样可以远程使用这个界面。例如:word应用程序是个单独GUI,没有服务器。也就是说目标GUI程序可以是CS系统,也可以不是。