CN115640097A - 应用程序虚拟化方法、系统、电子设备及存储介质 - Google Patents

应用程序虚拟化方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN115640097A
CN115640097A CN202110819874.XA CN202110819874A CN115640097A CN 115640097 A CN115640097 A CN 115640097A CN 202110819874 A CN202110819874 A CN 202110819874A CN 115640097 A CN115640097 A CN 115640097A
Authority
CN
China
Prior art keywords
application program
client
linux
server
window information
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
Application number
CN202110819874.XA
Other languages
English (en)
Inventor
盛杰辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN202110819874.XA priority Critical patent/CN115640097A/zh
Priority to PCT/CN2022/083502 priority patent/WO2023000705A1/zh
Publication of CN115640097A publication Critical patent/CN115640097A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例涉及通信技术领域,公开了一种应用程序虚拟化方法,包括:在接收到Linux客户端的启动请求时,启动所述服务端的Windows应用程序;实时获取所述Windows应用程序的窗口信息,并将所述窗口信息返回至所述Linux客户端,以在所述Linux客户端上绘制所述窗口信息。本发明实施例还公开了一种应用程序虚拟化系统、电子设备及存储介质。本发明实施例提供的应用程序虚拟化方法、系统、电子设备及存储介质,可以实现将Windows系统的应用程序应用于Linux系统上。

Description

应用程序虚拟化方法、系统、电子设备及存储介质
技术领域
本申请实施例涉及通信技术领域,特别涉及一种应用程序虚拟化方法、系统、电子设备及存储介质。
背景技术
Windows系统的应用程序相对于Linux系统具有较为友好的图形交互界面,因此若在Linux系统运行Windows系统的应用程序,则可以在Linux系统上获取较好的图形交互的体验,也可以利用现有的Windows系统的应用程序。
然而,由于Windows系统与Linux系统不兼容,因此目前无法实现将Windows系统的应用程序应用于Linux系统上。
发明内容
本申请实施例的主要目的在于提出一种应用程序虚拟化方法、系统、电子设备及存储介质,可以实现将Windows系统的应用程序应用于Linux系统上。
为实现上述目的,本申请实施例提供了一种应用程序虚拟化方法,包括:在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序;实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端,以在Linux客户端上绘制窗口信息。
为实现上述目的,本申请实施例还提供了一种应用程序虚拟化方法,包括:利用虚拟应用客户端调起VDI客户端向服务端发送启动请求,以启动服务端的Windows应用程序,虚拟应用客户端和VDI客户端安装于Linux客户端;在接收到服务端发送的Windows应用程序的窗口信息时,利用VDI客户端在Linux客户端上绘制窗口信息。
为实现上述目的,本申请实施例还提供了一种应用程序虚拟化系统,包括Linux客户端和服务端;Linux客户端用于向服务端发送启动请求;服务端用于在接收到启动请求时,启动服务端的Windows应用程序,实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端;Linux客户端还用于在接收到窗口信息时,在Linux客户端上绘制窗口信息。
为实现上述目的,本申请实施例还提供了一种电子设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的应用程序虚拟化方法。
为实现上述目的,本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的应用程序虚拟化方法。
本申请提出的应用程序虚拟化方法,通过在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序,实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端,以在Linux客户端上绘制Windows应用程序的窗口信息,可以在Linux客户端上虚拟运行Windows应用程序,从而实现将Windows系统的应用程序应用于Linux系统上。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
图1是本发明实施例提供的应用程序虚拟化方法的流程示意图;
图2是本发明实施例提供的应用程序虚拟化方法中S102细化步骤的流程示意图;
图3是本发明实施例提供的应用程序虚拟化方法的另一流程示意图;
图4是本发明实施例提供的应用程序虚拟化系统的模块结构示意图;
图5是本发明实施例提供的应用程序虚拟化系统的另一模块结构示意图;
图6是本发明实施例提供的应用程序虚拟化系统的具体示例图;
图7是本发明实施例提供的应用程序虚拟化系统在使用虚拟应用的流程示例图;
图8是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
在一个实施例中,涉及一种应用程序虚拟化方法,通过在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序,实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端,以在Linux客户端上绘制Windows应用程序的窗口信息。通过在Linux客户端上绘制Windows应用程序的窗口信息,可以在Linux客户端虚拟运行Windows应用程序,从而实现将Windows系统的应用程序应用于Linux系统上。
本发明实施例提供的应用程序虚拟化方法的执行主体可以为服务端,其中,服务端可以由单个服务器或多个服务器组成的集群来实现,以下以服务端为例进行说明。
本发明实施例提供的应用程序虚拟化方法的具体流程如图1所示,包括以下步骤:
S101:在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序。
Linux客户端是指操作系统为Linux系统的客户端,而服务端的操作系统可以为Windows系统,从而可以在接收到启动请求时,在服务端启动Windows应用程序。
Linux客户端的启动请求可以由安装于Linux客户端的虚拟应用客户端发起,在虚拟应用客户端中展示有Windows应用程序的信息,例如Windows应用程序在服务端的路径、图标、版本号等信息。在启动请求中可携带有Windows应用程序的信息,从而服务端在接收到启动请求时,可以根据携带的Windows应用程序的信息到相应的存储位置打开Windows应用程序。虚拟应用客户端中的Windows应用程序的信息可以是在虚拟应用客户端连接到服务端时,从服务端处获取的。
S102:实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端,以在Linux客户端上绘制窗口信息。
在一个具体的例子中,如图2所示,S102具体可以包括以下步骤:
S1021:接收Linux客户端的输入信息。
Linux客户端的输入信息可以包括Linux客户端的用户通过键盘或鼠标等输入设备输入的信息。Linux客户端的输入信息可以通过上述的虚拟应用客户端获取后发送至服务端,从而使服务端接收到相应的输入信息。
S1022:在接收到Linux客户端的输入信息时,实时获取Windows应用程序在响应输入信息后的第一窗口信息,并将第一窗口信息返回至Linux客户端,以在Linux客户端上绘制第一窗口信息。
在接收到Linux客户端的输入信息时,服务端将相应的输入信息输入至Windows应用程序中,Windows应用程序会根据输入信息进行相应的响应,服务端获取Windows应用程序响应后的窗口信息(第一窗口信息),并将第一窗口信息返回至Linux客户端,从而使Linux客户端可以绘制第一窗口信息。
通过在接收到Linux客户端的输入信息时,获取Windows应用程序响应输入信息的窗口信息,并在Linux客户端绘制相应的窗口信息,可以使Linux客户端的用户在Linux客户端看到Windows应用程序的响应,从而实现Linux客户端的用户与虚拟运行在Linux客户端的Windows应用程序的交互。
在一个具体的例子中,实时获取Windows应用程序的窗口信息,可以是使用全局钩子(hook)实时捕获Windows应用程序的窗口信息。其中,通过全局钩子捕获的Windows应用程序的窗口信息可以包括Windows应用程序的窗口句柄、标题、大小、位置、状态和图标等信息。通过使用全局钩子实时捕获Windows应用程序的窗口信息,可以使Windows应用程序的窗口信息被实时获取到,进而在Linux客户端进行相应的绘制。
在一个具体的例子中,本发明实施例提供的应用程序虚拟化方法,还包括:在接收到Windows应用程序的文件指令时,将文件指令重定向至Linux客户端。
文件指令可以包括打开文件、存储文件或删除文件等对文件进行读写的指令。可选地,在Linux客户端连接到服务端时,服务端获取Linux客户端的文件路径,从而在接收到Windows应用程序的文件指令时,根据Linux客户端的文件路径将文件指令重定向至Linux客户端,从而使虚拟运行在Linux客户端的Windows应用程序也可以实现对Linux客户端的文件的读写。
例如,若实际在服务端运行Windows应用程序需要打开一个word文档时,服务端接收到Windows应用程序的打开文件的文件指令,则将打开文件的文件指令重定向至Linux客户端的文件路径,再根据Linux客户端的用户的选择打开Linux客户端的word文档。
在一个具体的例子中,本发明实施例提供的应用程序虚拟化方法还包括:在接收到Linux客户端的输入信息时,若输入信息触发服务端的剪切板,则将剪切板重定向至Linux客户端。
将剪切板重定向至Linux客户端,可以将服务端的剪切板内容重定向至Linux客户端的剪切板,从而可以在Linux客户端得到相应的剪切板内容。
例如,若Linux客户端的输入信息为复制Windows应用程序中的一段文字,触发服务端的剪切板,而服务端将剪切板的内容重定向至Linux客户端,这样,当Linux客户端另一应用程序需要使用该段文字时,由于Linux客户端的剪切板也有相应的内容,因此可以直接将该段文字拷贝至另一应用程序,实现虚拟运行在Linux客户端的Windows应用程序与实际运行在Linux客户端的应用程序的数据交互。
通过将服务端的剪切板重定向至Linux客户端,可以在Linux客户端使用相应的剪切板内容,实现虚拟运行在Linux客户端的Windows应用程序与Linux客户端本地进行数据交互。
本发明实施例提供的应用程序虚拟化方法,通过在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序,实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端,以在Linux客户端上绘制Windows应用程序的窗口信息,可以在Linux客户端上虚拟运行Windows应用程序,从而实现将Windows系统的应用程序应用于Linux系统上。
在一个实施例中,涉及一种应用程序虚拟化方法,通过利用虚拟应用客户端调起VDI(Virtual Desktop Infrastructure,虚拟桌面架构)客户端向服务端发送启动请求,以启动服务端的Windows应用程序,在接收到服务端发送的Windows应用程序的窗口信息时,利用VDI客户端在Linux客户端上绘制Windows应用程序的窗口信息。
本发明实施例提供的应用程序虚拟化方法的执行主体可以为Linux客户端。
本发明实施例提供的应用程序虚拟化方法的具体流程如图3所示,包括以下步骤:
S201:利用虚拟应用客户端调起VDI客户端向服务端发送启动请求,以启动服务端的Windows应用程序,虚拟应用客户端和VDI客户端安装于Linux客户端。
虚拟应用客户端用于接受Linux客户端的用户的登录,并向用户展示Windows应用程序的信息,展示的信息包括Windows应用程序在服务端的路径、图标、版本号等信息,在接收到用户启动Windows应用程序的请求时,调起VDI客户端向服务端发送启动请求。例如,用户在虚拟应用客户端中Windows应用程序的图标上点击时,虚拟应用客户端调起VDI客户端向服务端发送启动请求。
S202:在接收到服务端发送的Windows应用程序的窗口信息时,利用VDI客户端在Linux客户端上绘制窗口信息。
在利用VDI客户端在Linux客户端上绘制Windows应用程序的窗口信息时,VDI客户端相应的绘制画布可能存在剩余,则在绘制完Windows应用程序的窗口信息后,对多余的画布进行剪除,仅保留Windows应用程序的窗口,从而使Linux客户端得到一个更加逼真的Windows应用程序,提高Linux客户端的用户在使用Windows应用程序的体验。
在一个具体的例子中,在S202之前,本发明实施例提供的应用程序虚拟化方法还包括:利用VDI客户端发送所述Linux客户端的输入信息;相应地,S202具体可以包括:接收服务端发送的第一窗口信息,并通过VDI客户端绘制第一窗口信息,其中,第一窗口信息为Windows应用程序响应输入信息后的窗口信息。
本发明实施例提供的应用程序虚拟化方法,通过利用虚拟应用客户端调起VDI客户端向服务端发送启动请求,以启动服务端的Windows应用程序,在接收到服务端发送的Windows应用程序的窗口信息时,利用VDI客户端在Linux客户端上绘制Windows应用程序的窗口信息,可以在Linux客户端上虚拟运行Windows应用程序,从而实现将Windows系统的应用程序应用于Linux系统上。
不难发现,本实施例为与前述实施例相对应的在客户端的实施例,本实施例可与前述实施例互相配合实施。前述实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在前述实施例中。
此外,本领域技术人员可以理解,上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
在一个实施例中,涉及一种应用程序虚拟化系统300,如图4所示,包括Linux客户端301和服务端302。
Linux客户端301用于向服务端302发送启动请求;
服务端302用于在接收到启动请求时,启动服务端302的Windows应用程序,实时获取Windows应用程序的窗口信息,并将窗口信息返回至Linux客户端301;
Linux客户端301还用于在接收到窗口信息时,在Linux客户端301上绘制窗口信息。
进一步地,如图5所示,本发明实施例提供的应用程序虚拟化系统300还包括管理端303。
管理端303用于将待发布的应用程序发送至服务端302;
服务端302还用于在接收到待发布的应用程序时,将待发布的应用程序发布在服务端302,得到Windows应用程序。
进一步地,服务端302还用于:接收Linux客户端301的输入信息;在接收到Linux客户端301的输入信息时,实时获取Windows应用程序在响应输入信息后的第一窗口信息,并将第一窗口信息返回至Linux客户端301,以在Linux客户端301上绘制第一窗口信息。
进一步地,服务端302还用于:使用全局钩子实时捕获Windows应用程序的窗口信息。
进一步地,服务端302还用于:在接收到Windows应用程序的文件指令时,将文件指令重定向至Linux客户端301。
进一步地,服务端302还用于:在接收到Linux客户端301的输入信息时,若输入信息触发服务端302的剪切板;则将剪切板重定向至Linux客户端301。
为了更清楚地说明本发明实施例的技术方案,下面以一个具体示例进行说明。请参考图6,其为本发明实施例提供的应用程序虚拟化系统300的具体示例图。图6中主要包括虚线框所示的两个部分的内容:虚拟应用的发布和虚拟应用的使用,其中,虚拟应用的具体应用程序为Windows应用程序,具体如下:
1、发布虚拟应用。
Irai为管理页面,管理员可在该页面上进行虚拟应用的发布、分配用户的虚拟应用以及虚拟应用和应用服务器的管理。
具体地,管理员先在管理页面加载虚拟应用,Irai将发布的任务通知虚拟化管理模块ICES,ICES通过主机上的虚机代理hmbooster与服务端虚拟的虚机代理vmbooster进行通信,vmbooster与服务端内安装的发布工具vpservice交互,vpservice将虚拟应用的信息(包括软件路径、图标、版本等信息)上报给管理端的内存库CSAP,CSAP再将数据通过数据传输模块CS将数据传给Irai,至此,管理员可在页面看到服务端所有的虚拟应用,再选择需要发布的虚拟应用进行发布。其中,vpservice的作用除了发布虚拟应用外,还用于将服务端注册到Irai,注册信息包括服务器名称、通用唯一识别码、服务器ip、组件版本、服务器启动状态、服务器工作状态、计算机名、域信息、当前连接会话数等信息。
2、使用虚拟应用。
Linux虚拟桌面安装虚拟应用客户端Ientry,用户登录虚拟应用客户端Ientry,获取系统参数以及虚拟应用软件信息(包括软件路径、图标、版本号等)。
虚拟应用客户端Ientry调起VDI客户端创建虚拟应用窗口,VDI客户端通过主通道连接服务端的UsbIpc模块,UsbIpc模块调用AppProxy的动态库;AppProxy的动态库与Rds和Display交互,Rds创建用户session,Display负责session图像的抓取、编码和session应用的上报;Display启动Sound和Input负责获取声音、键盘和鼠标的输入。Display启动vdagent负责应用程序的启动,全量钩子捕获窗口,获取窗口句柄、标题、大小、位置、状态、图标等信息,vdagent再将应用程序的窗口通过ice协议传给客户端VDI进行绘制,完成在Linux客户端上虚拟应用的使用,同时vdagent可通过ice协议实现剪切板重定向。其中,VDI客户端通过主通道连接服务端的UsbIpc模块时,可以通过ice协议的主通道进行连接。应当说明的是,上述ice协议也可以为其它协议,上述内容仅以ice协议为例进行说明。另外,以上使用虚拟应用的流程可进一步参考图7,其为本发明实施例提供的应用程序虚拟化系统300在使用虚拟应用的流程示例图。
由于云桌面平台提供了虚拟化环境,因此本发明实施例提供的应用程序虚拟化系统可以在云桌面平台上实现,可以降低实现的难度,其实现的大概过程可以如下:
1、先在云桌面平台创建Linux虚机和winserver虚机。在winserver虚机内安装发布工具和虚拟化组件,制作为模板。Linux虚机安装虚拟应用客户端,制作为桌面虚机。其中,winserver由于较为安全,因此可作为虚拟应用的服务端。
2、通过模板创建虚拟应用的服务端和Linux桌面虚机。管理平台可通过建应用服务器池和桌面池的方式,创建虚拟应用的服务端和linux桌面,同时对两者进行加域操作。
3、创建域用户,用于登录虚拟应用的客户端(Linux客户端)。虚拟应用的服务端创建完成后,在管理页面发布虚拟应用,同时将虚拟应用分配给域用户。
4、域用户登录Linux桌面,打开虚拟应用的客户端,单点登录,可在虚拟应用的客户端内获取虚拟应用的列表,鼠标双击虚拟应用打开相应的虚拟使用。
不难发现,本实施例为与前述方法的实施例相对应的系统实施例,本实施例可与前述方法的实施例互相配合实施。前述方法的实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在前述方法的实施例中。
值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施例中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。
在一个实施例中,涉及一种电子设备,如图8所示,包括:至少一个处理器401;以及,与至少一个处理器401通信连接的存储器402;其中,存储器402存储有可被至少一个处理器401执行的指令,指令被至少一个处理器401执行,以使至少一个处理器401能够执行上述的应用程序虚拟化方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
在一个实施例中,涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种应用程序虚拟化方法,其特征在于,包括:
在接收到Linux客户端的启动请求时,启动服务端的Windows应用程序;
实时获取所述Windows应用程序的窗口信息,并将所述窗口信息返回至所述Linux客户端,以在所述Linux客户端上绘制所述窗口信息。
2.根据权利要求1所述的应用程序虚拟化方法,其特征在于,所述实时获取所述Windows应用程序的窗口信息,并将所述窗口信息返回至所述Linux客户端,以在所述Linux客户端上绘制所述窗口信息,包括:
接收所述Linux客户端的输入信息;
在接收到Linux客户端的输入信息时,实时获取所述Windows应用程序在响应所述输入信息后的第一窗口信息,并将所述第一窗口信息返回至所述Linux客户端,以在所述Linux客户端上绘制所述第一窗口信息。
3.根据权利要求1所述的应用程序虚拟化方法,其特征在于,所述实时获取所述Windows应用程序的窗口信息,包括:
使用全局钩子实时捕获所述Windows应用程序的窗口信息。
4.根据权利要求1-3任一项所述的应用程序虚拟化方法,其特征在于,还包括:
在接收到所述Windows应用程序的文件指令时,将所述文件指令重定向至所述Linux客户端。
5.根据权利要求4所述的应用程序虚拟化方法,其特征在于,还包括:
在接收到所述Linux客户端的输入信息时,若所述输入信息触发所述服务端的剪切板;则将所述剪切板重定向至所述Linux客户端。
6.一种应用程序虚拟化方法,其特征在于,包括:
利用虚拟应用客户端调起VDI客户端向服务端发送启动请求,以启动所述服务端的Windows应用程序,所述虚拟应用客户端和所述VDI客户端安装于Linux客户端;
在接收到所述服务端发送的所述Windows应用程序的窗口信息时,利用所述VDI客户端在所述Linux客户端上绘制所述窗口信息。
7.一种应用程序虚拟化系统,其特征在于,包括Linux客户端和服务端;
所述Linux客户端用于向所述服务端发送启动请求;
所述服务端用于在接收到所述启动请求时,启动所述服务端的Windows应用程序,实时获取所述Windows应用程序的窗口信息,并将所述窗口信息返回至所述Linux客户端;
所述Linux客户端还用于在接收到所述窗口信息时,在所述Linux客户端上绘制所述窗口信息。
8.根据权利要求7所述的应用程序虚拟化系统,其特征在于,还包括管理端;
所述管理端用于将待发布的应用程序发送至所述服务端;
所述服务端还用于在接收到所述待发布的应用程序时,将所述待发布的应用程序发布在所述服务端,得到所述Windows应用程序。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至5任一项所述的应用程序虚拟化方法或如权利要求6所述的应用程序虚拟化方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的应用程序虚拟化方法或如权利要求6所述的应用程序虚拟化方法。
CN202110819874.XA 2021-07-20 2021-07-20 应用程序虚拟化方法、系统、电子设备及存储介质 Pending CN115640097A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110819874.XA CN115640097A (zh) 2021-07-20 2021-07-20 应用程序虚拟化方法、系统、电子设备及存储介质
PCT/CN2022/083502 WO2023000705A1 (zh) 2021-07-20 2022-03-28 应用程序虚拟化方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110819874.XA CN115640097A (zh) 2021-07-20 2021-07-20 应用程序虚拟化方法、系统、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115640097A true CN115640097A (zh) 2023-01-24

Family

ID=84940194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110819874.XA Pending CN115640097A (zh) 2021-07-20 2021-07-20 应用程序虚拟化方法、系统、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN115640097A (zh)
WO (1) WO2023000705A1 (zh)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447723B (zh) * 2010-10-12 2015-09-09 运软网络科技(上海)有限公司 客户端虚拟化架构
US8866701B2 (en) * 2011-03-03 2014-10-21 Citrix Systems, Inc. Transparent user interface integration between local and remote computing environments

Also Published As

Publication number Publication date
WO2023000705A1 (zh) 2023-01-26

Similar Documents

Publication Publication Date Title
US9244817B2 (en) Remote debugging in a cloud computing environment
US5832191A (en) Method and apparatus for automatically enabling communication with a network printer
CN109213611B (zh) 跨进程通讯方法、装置、终端及存储介质
US8762544B2 (en) Selectively communicating data of a peripheral device to plural sending computers
CN102752369B (zh) 电视应用服务的提供方法及虚拟化内容服务平台
CN110489192B (zh) 远程通信方法及装置、电子设备
CN107580011B (zh) 一种数据共享方法及桌面云服务端
CN111045781B (zh) 一种云平台创建镜像的方法、装置和存储介质
US9838460B2 (en) Tool for sharing applications across client devices
US11695623B2 (en) Method and apparatus for binding network card in multi-network card server, and electronic device and storage medium
CN108632354B (zh) 物理机纳管方法、装置及云桌面管理平台
CN111679911B (zh) 云环境中gpu卡的管理方法、装置、设备及介质
CN105100150B (zh) 一种云桌面迁移的方法、装置及分布式云桌面系统
CN115576654B (zh) 一种请求处理方法、装置、设备及存储介质
CN104601666A (zh) 日志服务方法及云平台
CN114296953B (zh) 一种多云异构系统及任务处理方法
CN108255547B (zh) 一种应用程序控制方法及装置
CN114489954A (zh) 基于虚拟化平台的租户创建方法、租户访问方法及设备
WO2019119280A1 (zh) 业务处理方法、云服务器和终端设备
KR20210027338A (ko) 특정 시점의 환경을 제공할 수 있는 가상 데스크톱 시스템 및 그 데이터 처리 방법
US9774659B2 (en) Bi-directional channel-based progress indicator
CN110083323A (zh) 一种实现多显示和多用户并发的方法及装置
CN115640097A (zh) 应用程序虚拟化方法、系统、电子设备及存储介质
CN104869133A (zh) 一种数据记录的方法、系统以及接入服务器
CN105027054A (zh) 一种手势操作的转换方法和装置

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