一种应用界面的集成系统和方法技术方案

技术编号:14990811 阅读:77 留言:0更新日期:2017-04-03 21:48
本发明专利技术提供了一种应用界面的集成系统和方法。所述系统包括安装有第一应用的第一主机节点和安装有第二应用的第二主机节点;第一主机节点包括至少一个应用界面展示组件;应用界面展示组件包括网络传输代理模块;第二主机节点包括界面采集模块和网络传输存根模块;应用界面展示组件还包括界面展示模块。依据本发明专利技术实施例集成应用和被集成应用可以不要求在同一个主机节点上运行,不要求具备相同的软件运行环境,不要求具备兼容的编程语言,也不要求编写集成程序,从而可以支持远程应用界面级的采集与集成,被集成应用可以在运行在远程的、异构的软件平台上,不需要修改代码;并且,可以采集虚拟机里运行的被集成应用信息,不需要物理显示适配器。

【技术实现步骤摘要】

本专利技术涉及信息处理
,特别是涉及一种应用界面的集成系统,以及,一种应用界面的集成方法。
技术介绍
随着企业信息化的发展,各行业企业拥有越来越多的信息化应用。这些应用包括各类本地应用、CS(客户端-服务器)应用、BS(浏览器-服务器)应用等。随着应用的增多和信息的膨胀,对集中展示来自不同应用的信息的要求越来越迫切。这些应用信息可能来自相同应用程序不同的应用组件,也可能来自不同的应用程序,甚至来自不同的主机节点,使得各应用开发语言、运行环境各不相同,应用集成困难很大。系统集成商处理应用界面信息的集成,一般有如下两种方案:一种方案是采用应用软件集成实现,如通过门户技术应用程序接口(API)集成BS应用,或者通过应用程序接口(API)把被集成应用的程序组件化后集成到主应用中。要求主应用与被集成应用的界面都在同一台主机节点下运行,具有相同的应用和操作系统环境。为了集中展示来自不同应用的显示界面信息,最直接的处理方案就是利用应用程序接口(API)来通过编程实现。这种方法的前提是需要被集成应用能提供相关的API接口规范(如lib库接口、COM接口、EJB接口、IDL接口等),以及提供相关的实现库(如dll、so、jar包等);或者能得到被集成应用的源代码重新编译链接实现集成。但在实际行业应用中,被集成应用很可能没有源代码提供,也没有相关API可用,造成API集成困难。同时被集成应用可能采用了不同的编写语言时、需要不同的运行环境时、需要不同的运行位置时,这种API集成实现起来就非常困难。另一种方案是结合拼接大屏和图像控制器对来自不同主机显示适配器输出的画面进行集成。当被集成应用不能通过API作界面集成时,可以利用多个显示器把被集成应用作为显示源进行集成,并发展了大屏拼接屏幕和大屏拼接图像控制器等硬件设备。被集成应用在一台电脑上运行,电脑通过显示适配器向图像控制器输出视频信息,经过图像控制器的配置选择输出到大屏屏幕中。这种方案存在的问题是,成本较高,输出界面包含应用所在桌面、任务栏等无用信息,并且可能会存在应用对显卡的竞争问题。
技术实现思路
本专利技术提供了一种应用界面的集成系统和方法,以全部解决或部分解决上述技术问题。本专利技术提供了一种应用界面的集成系统,包括安装有第一应用的第一主机节点和安装有第二应用的第二主机节点,所述第一应用为采用C语言、C++语言或Java语言编写的应用程序或浏览器,所述第二主机节点为物理主机节点或虚拟主机节点;所述第一主机节点包括至少一个应用界面展示组件,所述应用界面展示组件为动态链接库、可执行程序包或浏览器插件;所述第一应用,用于向所述应用界面展示组件发送采集会话指令,所述采集会话指令携带第二应用所在的第二主机节点的位置信息;所述应用界面展示组件包括网络传输代理模块,所述网络传输代理模块用于根据所述采集会话建立指令建立与所述第二主机节点之间的网络连接通道,并通过所述网络连接通道将所述采集会话指令发送给所述第二主机节点;所述第二主机节点包括界面采集模块和网络传输存根模块,所述界面采集模块用于接收所述应用界面展示组件发送的采集会话指令,开始静态采集和/或周期性动态采集所述第二应用的界面信息,所述网络传输存根模块用于将采集的界面信息反馈给所述应用界面展示组件;所述应用界面展示组件还包括界面展示模块,所述界面展示模块用于控制所述界面信息在所述第一应用的界面窗口的展示。优选地,所述采集会话指令携带采集参数,所述采集参数包括可执行映像的名称、应用主窗口标题名称、窗口名称和类型、窗口尺寸、采集区矩形位置、尺寸和采集周期参数;所述界面采集模块包括:窗口查找子模块,用于根据所述采集参数中可执行映像的名称和应用主窗口标题名称,在系统的业务进程列表中查找目标窗口;尺寸计算子模块,用于比较所述窗口尺寸、采集区矩形位置和尺寸,计算采集时采集区的位置和采集区的尺寸;接口调用子模块,用于调用系统API接口,根据所述采集周期参数周期性采集目标窗口的图像。优选地,所述窗口查找子模块包括:第一枚举子单元,用于根据所述采集参数中映像名枚举调用系统中的业务进程列表,当所述业务进程列表为空时返回采集应用不存在的状态信息;第二枚举子单元,用于当所述业务进程列表中存在所述应用主窗口标题名称时,对所述应用主窗口做枚举匹配;第三枚举子单元,用于当存在所述应用主窗口时,根据采集的窗口名称和类型对主窗口下的子窗口作枚举,得到采集的目标窗口。优选地,所述采集会话指令包括采集会话建立指令、会话关闭指令、设置采集参数指令、启动采集指令或终止采集指令。优选地,所述界面采集模块,还用于接收所述应用界面展示组件发送的终止采集指令,并停止采集所述第二应用的界面信息;和/或,所述界面采集模块,还用于接收所述应用界面展示组件发送的会话关闭指令,若所述第二主机节点正在采集所述第二应用的界面信息,则生成并执行终止采集指令,停止采集所述第二应用的界面信息,并进一步执行会话关闭指令,停止与所述应用界面展示组件之间的网络连接。优选地,所述第二主机节点还包括图像编码模块,所述图像编码模块用于对采集的界面信息进行编码和压缩处理,进一步包括:第一编码子模块,用于将采集的第一帧图像作为初始静态图像,并对初始静态图像进行编码和压缩处理;第二编码子模块,用于针对第二帧图像作为动态帧图像,将其中与所述初始静态图像不重复的部分进行编码和压缩处理;第三编码子模块,用于对经过编码和压缩处理的图像进行熵编码。优选地,所述第一主机节点还包括图像解码模块,所述图像解码模块用于对采集的界面信息进行解码处理,进一步包括:第一解码子模块,用于对采集的界面信息进行熵解码;第二解码子模块,用于若所述界面信息为静态帧图像,则针对第一行图像信息作基行解压缩,并针对其他行图像信息作差行解压缩;第三解码子模块,用于若所述界面信息为动态帧图像,则将其中包含的参考块作为新的图像块,针对变化的块中第一行图像信息作基行解压缩,并针对其他行图像信息作差行解压缩;记录子模块,用于将解压缩后的图像信息作为静态参考块,记录所述参考块的哈希值。本专利技术还提供了一种应用界面的集成方法,包括:第一主机节点的第一应用集成至少一个应用界面展示组件,所述应用界面展示组件为动态链接库、可执行程序包或浏览器插件,所述第一应用为采用C语言、C++语言或Java语本文档来自技高网
...

【技术保护点】
一种应用界面的集成系统,其特征在于,包括安装有第一应用的第一主机节点和安装有第二应用的第二主机节点,所述第一应用为采用C语言、C++语言或Java语言编写的应用程序或浏览器,所述第二主机节点为物理主机节点或虚拟主机节点;所述第一主机节点包括至少一个应用界面展示组件,所述应用界面展示组件为动态链接库、可执行程序包或浏览器插件;所述第一应用,用于向所述应用界面展示组件发送采集会话指令,所述采集会话指令携带第二应用所在的第二主机节点的位置信息;所述应用界面展示组件包括网络传输代理模块,所述网络传输代理模块用于根据所述采集会话建立指令建立与所述第二主机节点之间的网络连接通道,并通过所述网络连接通道将所述采集会话指令发送给所述第二主机节点;所述第二主机节点包括界面采集模块和网络传输存根模块,所述界面采集模块用于接收所述应用界面展示组件发送的采集会话指令,开始静态采集和/或周期性动态采集所述第二应用的界面信息,所述网络传输存根模块用于将采集的界面信息反馈给所述应用界面展示组件;所述应用界面展示组件还包括界面展示模块,所述界面展示模块用于控制所述界面信息在所述第一应用的界面窗口的展示。

【技术特征摘要】
1.一种应用界面的集成系统,其特征在于,包括安装有第一应用的第
一主机节点和安装有第二应用的第二主机节点,所述第一应用为采用C语
言、C++语言或Java语言编写的应用程序或浏览器,所述第二主机节点为物
理主机节点或虚拟主机节点;
所述第一主机节点包括至少一个应用界面展示组件,所述应用界面展示
组件为动态链接库、可执行程序包或浏览器插件;
所述第一应用,用于向所述应用界面展示组件发送采集会话指令,所述
采集会话指令携带第二应用所在的第二主机节点的位置信息;
所述应用界面展示组件包括网络传输代理模块,所述网络传输代理模块
用于根据所述采集会话建立指令建立与所述第二主机节点之间的网络连接
通道,并通过所述网络连接通道将所述采集会话指令发送给所述第二主机节
点;
所述第二主机节点包括界面采集模块和网络传输存根模块,所述界面采
集模块用于接收所述应用界面展示组件发送的采集会话指令,开始静态采集
和/或周期性动态采集所述第二应用的界面信息,所述网络传输存根模块用于
将采集的界面信息反馈给所述应用界面展示组件;
所述应用界面展示组件还包括界面展示模块,所述界面展示模块用于控
制所述界面信息在所述第一应用的界面窗口的展示。
2.根据权利要求1所述的系统,其特征在于,所述采集会话指令携带
采集参数,所述采集参数包括可执行映像的名称、应用主窗口标题名称、窗
口名称和类型、窗口尺寸、采集区矩形位置、尺寸和采集周期参数;
所述界面采集模块包括:
窗口查找子模块,用于根据所述采集参数中可执行映像的名称和应用主
窗口标题名称,在系统的业务进程列表中查找目标窗口;
尺寸计算子模块,用于比较所述窗口尺寸、采集区矩形位置和尺寸,计
算采集时采集区的位置和采集区的尺寸;
接口调用子模块,用于调用系统API接口,根据所述采集周期参数周期
性采集目标窗口的图像。
3.根据权利要求2所述的系统,其特征在于,所述窗口查找子模块包
括:
第一枚举子单元,用于根据所述采集参数中映像名枚举调用系统中的业
务进程列表,当所述业务进程列表为空时返回采集应用不存在的状态信息;
第二枚举子单元,用于当所述业务进程列表中存在所述应用主窗口标题
名称时,对所述应用主窗口做枚举匹配;
第三枚举子单元,用于当存在所述应用主窗口时,根据采集的窗口名称
和类型对主窗口下的子窗口作枚举,得到采集的目标窗口。
4.根据权利要求1所述的系统,其特征在于,所述采集会话指令包括
采集会话建立指令、会话关闭指令、设置采集参数指令、启动采集指令或终
止采集指令。
5.根据权利要求1所述的系统,其特征在于:
所述界面采集模块,还用于接收所述应用界面展示组件发送的终止采集
指令,并停止采集所述第二应用的界面信息;
和/或,所述界面采集模块,还用于接收所述应用界面展示组件发送的
会话关闭指令,若所述第二主机节点正在采集所述第二应用的界面信息,则
生成并执行终止采集指令,停止采集所述第二应用的界面信息,并进一步执
行会话关闭指令,停止与所述应用界面展示组件之间的网络连接。
6.根据权利要求1所述的系统,其特征在于,所述第二主机节点还包
括图像编码模块,所述图像编码模块用于对采集的界面信息进行编码和压缩
处理,进一步包括:
第一编码子模块,用于将采集的第一帧图像作为初始静态图像,并对初
始静态图像进行编码和压缩处理;
第二编码子模块,用于针对第二帧图像作为动态帧图像,将其中与所述
初始静态图像不重复的部分进行编码和压缩处理;
第三编码子模块,用于对经过编码和压缩处理的图像进行熵编码。
7.根据权利要求1所述的系统,其特征在于,所述第一主机节点还包
括图像解码模块,所述图像解码模块用于对采集的界面信息进行解码处理,
进一步包括:
第一解码子模块,用于对采集的界面信息进行熵解码;
第二解码子模块,用于若所述界面信息为静态帧图像,则针对第一行图
像信息作基行解压缩,并针对其他行图像信息作差行解压缩;
第三解码子模块,用于若所述界面信息为动态帧图像,则将其中包含的
参考块作为新的图像块,针对变化的块中第一行图像信息作基行...

【专利技术属性】
技术研发人员:周训波严磊张巧英
申请(专利权)人:大唐电信科技股份有限公司
类型:发明
国别省市:北京;11

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

1