1.一种基于远程桌面的本地应用访问方法,其特征在于,包括以下步骤:
接收客户端基于远程桌面发送的本地应用操作事件;所述远程桌面叠加了本地桌面,所述本地桌面对客户端用户完全不可见;
将远程桌面中接收到的所述本地应用操作事件映射到本地应用中;
将所述本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制;
所述将远程桌面中接收到的所述本地应用操作事件映射到本地应用中,包括:
根据远程桌面中接收到的所述本地应用操作事件生成一无内容的操作窗口;
将所述操作窗口叠加至远程桌面上,得到远程应用操作界面;
监控所述本地应用操作事件,并将所述本地应用操作事件映射为基于该远程应用操作界面的本地应用。
2.如权利要求1所述的方法,其特征在于,所述将远程桌面中接收到的所述本地应用操作事件映射到本地应用中,包括:
查找所述本地应用操作事件对应的存储路径,调用所述存储路径中的数据,在远程桌面上执行所述本地应用操作事件,访问本地应用。
3.如权利要求1或2所述的方法,其特征在于,还包括:
将本地应用和远程应用所调用的数据重定向至对应的存储空间。
4.如权利要求3所述的方法,其特征在于,所述将本地应用和远程应用所调用的数据重定向至对应的存储空间,包括:
控制本地应用的访问权限与远程桌面的访问权限一致。
5.一种基于远程桌面的本地应用访问装置,其特征在于,包括:
数据接收模块,用于接收客户端基于远程桌面发送的本地应用操作事件;所述远程桌面叠加了本地桌面,所述本地桌面对客户端用户完全不可见;
数据映射模块,用于将所述远程桌面中接收到的所述本地应用操作事件映射到本地应用中;
数据转换模块,用于将所述本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制;
所述数据映射模块还用于:
根据远程桌面中接收到的所述本地应用操作事件生成一无内容的操作窗口;
将所述操作窗口叠加至远程桌面上,得到远程应用操作界面;
监控所述本地应用操作事件,并将所述本地应用操作事件映射为基于该远程应用操作界面的本地应用。
6.如权利要求5所述的装置,其特征在于,所述数据映射模块还用于:
查找所述本地应用操作事件对应的存储路径,调用所述存储路径中的数据,在远程桌面上执行所述本地应用操作事件,访问本地应用。
7.如权利要求5或6所述的装置,其特征在于,还包括:
数据存储模块,用于将本地应用和远程应用所调用的数据重定向至对应的存储空间。
8.如权利要求7所述的装置,其特征在于,所述数据存储模块还用于:
控制本地应用的访问权限与远程桌面的访问权限一致。
基于远程桌面本地应用访问方法及装置\n技术领域\n[0001] 本发明涉及桌面虚拟化技术,尤其涉及一种基于远程桌面的本地应用访问方法及装置。\n背景技术\n[0002] 随着虚拟化、云计算、瘦终端等新兴技术的发展,桌面虚拟化产品方案逐渐得以普及。由于桌面虚拟化属于计算集中化的服务器中心模型,因此并非所有的应用场景都适合使用桌面虚拟化方案,如高清视频应用、3D设计软件应用等。不少企业提供了在虚拟化环境下针对高清视频、3D设计软件应用等不适合使用桌面虚拟化的本地应用的改进方案,但受制于移动网络环境、数据输入输出的吞吐率、终端服务器硬件配置等诸多限制因素影响,高清视频、3D应用等在虚拟化环境下的实际效果仍然无法与终端本地应用的体验相比。\n发明内容\n[0003] 鉴于此,有必要提供一种基于远程桌面的本地应用访问方法及装置,以解决本地应用不能在虚拟化桌面上进行访问的问题。\n[0004] 本发明实施例公开了一种基于远程桌面的本地应用访问方法,包括以下步骤:\n[0005] 接收客户端基于远程桌面发送的本地应用操作事件;\n[0006] 将远程桌面中接收到的所述本地应用操作事件映射到本地应用中;\n[0007] 将所述本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制。\n[0008] 优选地,所述将远程桌面中接收到的所述本地应用操作事件映射到本地应用中,包括:\n[0009] 查找所述本地应用操作事件对应的存储路径,调用所述存储路径中的数据,在远程桌面上执行所述本地应用操作事件,访问本地应用。\n[0010] 优选地,所述将本地应用对应的操作界面转换到远程桌面并显示,包括:\n[0011] 根据本地应用操作事件生成一无内容的操作窗口,并将所述操作窗口叠加至所述远程桌面上。\n[0012] 优选地,所述将远程桌面中接收到的所述本地应用操作事件映射到本地应用中,包括:\n[0013] 根据远程桌面中接收到的所述本地应用操作事件生成一操作窗口;\n[0014] 将所述操作窗口叠加至远程桌面上,得到远程应用操作界面;\n[0015] 监控所述本地应用操作事件,并将所述本地应用操作事件映射为基于该远程应用操作界面的本地应用。\n[0016] 优选地,所述基于远程桌面的本地应用访问方法还包括:\n[0017] 将本地应用和远程应用所调用的数据重定向至对应的存储空间。\n[0018] 优选地,所述将本地应用和远程应用所调用的数据重定向至对应的存储空间,包括:\n[0019] 控制本地应用的访问权限与远程桌面的访问权限一致。。\n[0020] 本发明实施例还公开一种基于远程桌面的本地应用访问装置,包括:\n[0021] 数据接收模块,用于接收客户端基于远程桌面发送的本地应用操作事件;\n[0022] 数据映射模块,用于将所述远程桌面中接收到的所述本地应用操作事件映射到本地应用中;\n[0023] 数据转换模块,用于将所述本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制。\n[0024] 优选地,所述数据映射模块还用于:\n[0025] 查找所述本地应用操作事件对应的存储路径,调用所述存储路径中的数据,在远程桌面上执行所述本地应用操作事件,访问本地应用。\n[0026] 优选地,所述数据转换模块还用于:\n[0027] 根据本地应用操作事件生成一无内容的操作窗口,并将所述操作窗口叠加至所述远程桌面上。\n[0028] 优选地,所述数据映射模块还用于:\n[0029] 根据远程桌面中接收到的所述本地应用操作事件生成一操作窗口;\n[0030] 将所述操作窗口叠加至远程桌面上,得到远程应用操作界面;\n[0031] 监控所述本地应用操作事件,并将所述本地应用操作事件映射为基于该远程应用操作界面的本地应用。\n[0032] 优选地,所述基于远程桌面的本地应用访问装置还包括:\n[0033] 数据存储模块,用于将本地应用和远程应用所调用的数据重定向至对应的存储空间。\n[0034] 优选地,所述数据存储模块还用于:\n[0035] 控制本地应用的访问权限与远程桌面的访问权限一致。\n[0036] 本发明实施例接收客户端基于远程桌面发送的本地应用操作事件,将远程桌面中接收到的所述本地应用操作事件映射到本地应用中;将本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制;相较于现有技术中,基于远程桌面技术进行远程操作时需要根据不同的应用不断地切换本地桌面和远程桌面,本发明实施例具有将本地应用进行远程化的有益效果,避免了本地桌面和远程桌面之间不断切换的麻烦;进一步地,由于可以仅采用一个远程桌面即可实现对本地应用和远程应用的调用且不需改变任何硬件设备,因此降低了系统成本,提高了远程桌面技术应用的灵活性。\n附图说明\n[0037] 图1是本发明基于远程桌面的本地应用访问方法一实施例流程示意图;\n[0038] 图2是本发明基于远程桌面的本地应用访问方法应用在一具体场景中的信号流图;\n[0039] 图3是本发明基于远程桌面的本地应用访问装置第一实施例功能模块示意图;\n[0040] 图4是本发明基于远程桌面的本地应用访问装置第二实施例功能模块示意图。\n[0041] 本发明实施例目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。\n具体实施方式\n[0042] 以下结合说明书附图及具体实施例进一步说明本发明的技术方案。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0043] 本发明本地应用程序的远程化访问方法及装置适用于桌面虚拟化技术,不限定桌面虚拟化技术的具体表现形式;由于桌面虚拟化技术可以通过任何设备、在任何地点、任何时间访问在网络上的属于用户个人的桌面系统,且该桌面虚拟化技术包括了共享桌面、远程桌面和虚拟桌面等类型,本发明的下述实施例中,仅以远程桌面为例来描述本发明基于远程桌面的本地应用访问方法的具体实施过程及本发明基于远程桌面的本地应用访问装置的具体工作过程。\n[0044] 图1是本发明基于远程桌面的本地应用访问方法一实施例流程示意图;如图1所示,本发明基于远程桌面的本地应用访问方法包括:\n[0045] 步骤S01、接收客户端基于远程桌面发送的本地应用操作事件;\n[0046] 有关桌面虚拟化技术的相应描述请参照上述对桌面虚拟化技术的具体描述,本实施例在此不再赘述。\n[0047] 客户端监控用户基于客户端UI(User Interface,用户操作界面)通过鼠标、键盘、多点触摸等操作所触发的本地应用操作事件,并通过互联网将监控到的用户的本地应用操作事件发送至服务端。本实施例中,服务端已经将远程桌面叠加至本地桌面上,本地桌面对于客户端的用户不可见,即用户一开始基于客户端的对本地应用或者远程应用的访问均是基于叠加了本地桌面的远程桌面进行的。本实施例中,仅对客户端基于远程桌面技术对本地应用的访问进行描述,有关客户端基于远程桌面技术对远程应用的访问所采用的技术手段在此不再赘述。\n[0048] 当客户端监控到用户基于远程桌面触发的本地应用操作事件时,将该本地应用操作事件发送至服务端,服务端接收客户端基于远程桌面发送的本地应用操作事件。\n[0049] 步骤S02、将远程桌面中接收到的本地应用操作事件映射到本地应用中;\n[0050] 步骤S03、将本地应用对应的操作界面转换到远程桌面并显示。\n[0051] 服务端将远程桌面中接收到的本地应用操作事件映射到本地应用中,并根据远程桌面中接收到的本地应用操作事件生成一操作窗口,将生成的该操作窗口叠加至远程桌面上得到远程应用操作界面,并将本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限对上述应用进行访问控制。\n[0052] 服务端监控本地应用操作事件,并将基于远程桌面接收到的本地应用操作事件映射为基于该远程应用操作界面的本地应用;本实施例中,服务端生成的操作窗口为无任何内容的操作窗口;且在本实施例中,本地桌面对客户端用户完全不可见,客户端用户只能基于远程应用操作界面进行对应的控制操作。\n[0053] 比如,服务端将客户端的UI操作转换成服务端的鼠标和键盘输入操作,并根据客户端本地应用操作事件生成一个无内容的窗口即操作窗口,以辅助控制客户端应用与服务端应用的叠加显示。同时,在远程桌面上为用户呈现状态栏图标、快捷方式、Alt-Tab快捷键切换等交互体验功能。用户对客户端应用的窗口的拖动、最大化、最小化、关闭等操作都会同步映射成对该映射窗口的操作。例如,客户端用户基于远程桌面将本地应用程序最小化,那么服务端则控制远程桌面上与用户操作的本地应用所对应的映射窗口也最小化到状态栏。\n[0054] 服务端查找本地应用操作事件对应的存储路径,调用存储路径中的数据,在远程桌面上执行本地应用操作事件,访问本地应用,由此,实现了基于远程桌面的远程化来访问本地应用的目的,避免本地桌面与远程桌面之间的频繁切换。\n[0055] 在一优选的实施例中,服务端将本地应用和远程应用所调用的数据重定向至对应的预先设置的存储空间,比如客户端的本地存储、服务端的数据库存储及其他存储路径等;\n且客户端用户可以在远程桌面中实现本地应用和远程应用程序之间直接通过剪切板进行数据的复制和粘贴等操作。本实施例中,本地应用的存储访问权限可以复用远程桌面上的应用的存储访问权限,对客户端用户完全透明;比如,远程桌面上只分配给该用户一个云存储路径,那么本地应用所保存或访问的磁盘路径也会自动重定向到这个云存储路径上,而禁用本地存储路径。因此,服务端同时可以控制本地应用的存储访问权限与远程桌面的访问权限一致。\n[0056] 在一优选的实施例中,服务端监控远程会话,保证客户端上不同用户的数据相互隔离,同时根据客户端发送的本地应用操作事件对应的客户端应用进行的运行情况,启动相应的映射窗口程序。\n[0057] 本发明实施例接收客户端基于远程桌面发送的本地应用操作事件,将远程桌面中接收到的本地应用操作事件映射到本地应用中;将本地应用对应的操作界面转换到远程桌面并显示;具有将本地应用进行远程化的有益效果,避免了本地桌面和远程桌面之间不断切换的麻烦;进一步地,由于可以仅采用一个远程桌面即可实现对本地应用和远程应用的调用且不需改变任何硬件设备,因此降低了系统成本,提高了远程桌面技术应用的灵活性。\n[0058] 图2是本发明基于远程桌面的本地应用访问方法应用在一具体场景中的信号流图;基于图1所述实施例的具体描述,如图2所示,客户端UI交互模块负责接收客户端的鼠标、键盘、多点触摸等操作,并通过网络模块发送至服务端。客户端图层控制模块负责控制本地应用窗口和远程应用或远程桌面窗口界面的显示,包括处理不同窗口之间的叠加显示。服务端应用交互模块负责将客户端的UI操作转换成服务端的鼠标和键盘输入操作。服务端应用映射窗口程序根据客户端应用生成一个无内容的窗口,以辅助控制客户端应用与服务端应用的叠加显示。同时在远程桌面上为用户呈现状态栏图标、快捷方式、Alt-Tab快捷键切换等交互体验功能。用户对客户端应用的窗口的拖动、最大化、最小化、关闭等操作都会同步映射成对该映射窗口的操作。服务端会话管理模块管理远程会话,保障不同用户的数据相互隔离,同时根据客户端应用进程的运行情况,启动相应的映射窗口程序。客户端网络交换模块及服务端网络交互模块均负责远程桌面数据的网络协议传输。客户端文件IO重定向模块及服务端文件IO重定向模块负责将客户端本地应用和服务端应用所调用的文件数据重定向到对应的存储空间;同时负责实现本地应用程序与远程应用程序之间的剪贴板映射功能,即客户端用户在远程桌面中的本地应用和远程应用程序之间,通过剪贴板进行复制粘贴操作。\n[0059] 本实施例中,通过服务端与客户端的交互,具有将本地应用进行远程化操作的有益效果,避免了本地桌面和远程桌面之间不断切换的麻烦;进一步地,由于可以仅采用一个远程桌面即可实现对本地应用和远程应用的调用且不需改变任何硬件设备,因此降低了系统成本,提高了远程桌面技术应用的灵活性。\n[0060] 图3是本发明基于远程桌面的本地应用访问装置第一实施例功能模块示意图;如图3所示,本发明基于远程桌面的本地应用访问装置包括数据接收模块01、数据映射模块02和数据转换模块03。\n[0061] 数据接收模块01,用于接收客户端基于远程桌面发送的本地应用操作事件;\n[0062] 有关桌面虚拟化技术的相应描述请参照上述对桌面虚拟化技术的具体描述,本实施例在此不再赘述。\n[0063] 客户端监控用户基于客户端UI通过鼠标、键盘、多点触摸等操作所触发的本地应用操作事件,并通过互联网将监控到的用户的本地应用操作事件发送至服务端。本实施例中,服务端已经将远程桌面叠加至本地桌面上,本地桌面对于客户端的用户不可见,即用户一开始基于客户端的对本地应用或者远程应用的访问均是基于叠加了本地桌面的远程桌面进行的。本实施例中,仅对客户端基于远程桌面技术对本地应用的访问进行描述,有关客户端基于远程桌面技术对远程应用的访问所采用的技术手段在此不再赘述。\n[0064] 当客户端监控到用户基于远程桌面触发的本地应用操作事件时,将该本地应用操作事件发送至服务端,服务端的数据接收模块01接收客户端基于远程桌面发送的本地应用操作事件。\n[0065] 数据映射模块02,用于将远程桌面中接收到的本地应用操作事件映射到本地应用中;\n[0066] 数据转换模块03,用于将所述本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限进行访问控制。\n[0067] 数据转换模块02将远程桌面中接收到的本地应用操作事件映射到本地应用中,数据转换模块03根据远程桌面中接收到的本地应用操作事件生成一操作窗口,将生成的该操作窗口叠加至远程桌面上得到远程应用操作界面,并将本地应用对应的操作界面转换到远程桌面并显示,供用户根据远程应用的访问权限对上述应用进行访问控制。\n[0068] 数据映射模块02监控本地应用操作事件,并将基于远程桌面接收到的本地应用操作事件映射为基于该远程应用操作界面的本地应用;本实施例中,数据映射模块02生成的操作窗口为无任何内容的操作窗口;且在本实施例中,本地桌面对客户端用户完全不可见,客户端用户只能基于远程应用操作界面进行对应的控制操作。本实施例中,操作窗口也可以由数据转换模块03生成。\n[0069] 比如,数据映射模块02将客户端的UI操作转换成服务端的鼠标和键盘输入操作,并根据客户端本地应用操作事件生成一个无内容的窗口即操作窗口,以辅助控制客户端应用与服务端应用的叠加显示。同时,在远程桌面上为用户呈现状态栏图标、快捷方式、Alt-Tab快捷键切换等交互体验功能。用户对客户端应用的窗口的拖动、最大化、最小化、关闭等操作都会同步映射成对该映射窗口的操作。例如,客户端用户基于远程桌面将本地应用程序最小化,那么数据映射模块02则控制远程桌面上与用户操作的本地应用所对应的映射窗口也最小化到状态栏。\n[0070] 数据转换模块03查找本地应用操作事件对应的存储路径,调用该存储路径中的数据,在远程桌面上执行本地应用操作事件,访问本地应用;由此,实现了基于远程桌面的远程化来访问本地应用的目的,避免本地桌面与远程桌面之间的频繁切换。\n[0071] 在一优选的实施例中,数据接收模块01还用于:\n[0072] 监控远程会话,隔离不同用户的访问数据。\n[0073] 数据接收模块01监控远程会话,保证客户端上不同用户的数据相互隔离,同时根据客户端发送的本地应用操作事件对应的客户端应用进行的运行情况,启动相应的映射窗口程序。\n[0074] 图4是本发明基于远程桌面的本地应用访问装置第二实施例功能模块示意图,基于图3所述实施例的具体描述,本发明基于远程桌面的本地应用访问装置还包括:\n[0075] 数据存储模块04,用于将本地应用和远程应用所调用的数据重定向至对应的存储空间。\n[0076] 在一优选的实施例中,数据存储模块04将本地应用和远程应用所调用的数据重定向至对应的预先设置的存储空间,比如客户端的本地存储、服务端的数据库存储及其他存储路径等;且客户端用户可以在远程桌面中实现本地应用和远程应用程序之间直接通过剪切板进行数据的复制和粘贴等操作。本实施例中,本地应用的存储访问权限可以复用远程桌面上的应用的存储访问权限,对客户端用户完全透明;比如,远程桌面上只分配给该用户一个云存储路径,那么本地应用所保存或访问的磁盘路径也会自动重定向到这个云存储路径上,而禁用本地存储路径。因此,数据存储模块04同时可以控制本地应用的存储访问权限与远程桌面的访问权限一致。\n[0077] 有关本发明基于远程桌面的本地应用访问装置在具体应用场景中的工作过程请参照图2所述实施例的具体描述,在此不再赘述。\n[0078] 本发明实施例接收客户端基于远程桌面发送的本地应用操作事件,将远程桌面中接收到的本地应用操作事件映射到本地应用中;将本地应用对应的操作界面转换到远程桌面并显示;具有将本地应用进行远程化的有益效果,避免了本地桌面和远程桌面之间不断切换的麻烦;进一步地,由于可以仅采用一个远程桌面即可实现对本地应用和远程应用的调用且不需改变任何硬件设备,因此降低了系统成本,提高了远程桌面技术应用的灵活性。\n[0079] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。\n[0080] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。\n[0081] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,包括若干指令的该计算机软件产品存储在是图2中的客户端或者图2中的服务端或者图3中的基于远程桌面的本地应用访问装置中的一个存储介质(如ROM/RAM、磁碟、光盘)中,用以使得图2中的服务端或者图3中的基于远程桌面的本地应用访问装置执行本发明各个实施例所述的方法。\n[0082] 以上所述仅为本发明的优选实施例,并非因此限制其专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
法律信息
- 2018-03-27
专利权人的姓名或者名称、地址的变更
专利权人由深圳市深信服电子科技有限公司变更为深信服科技股份有限公司
地址由518052 广东省深圳市南山区麒麟路1号科技创业服务中心410-413室变更为518000 广东省深圳市南山区学苑大道1001号南山智园A1栋一层
- 2017-03-15
- 2014-01-15
实质审查的生效
IPC(主分类): H04L 29/08
专利申请号: 201310379215.4
申请日: 2013.08.27
- 2013-12-11
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-02-06
|
2011-04-01
| | |
2
| |
2010-06-09
|
2008-10-28
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |