一种虚拟桌面环境中的可控文件传输方法与流程

文档序号:13886887阅读:356来源:国知局

本发明涉及一种桌面虚拟化,具体涉及一种虚拟桌面环境中的可控文件传输方法。



背景技术:

在生产环境中,有一部分用户场景是在现有物理桌面环境的基础上增加虚拟桌面的使用,虚拟桌面与物理桌面协同工作,在使用的过程中,经常会遇到某些文件需要在虚拟桌面和本地桌面来回拖动。现有的桌面虚拟化只能从客户端拖拽文件到虚拟机里,无法从虚拟机拖拽文件到客户端,并且对文件拖拽的管控粒度不够细。



技术实现要素:

为了克服上述现有技术的不足,本发明的目的是提供一种虚拟桌面环境中的可控文件传输方法,解决如何保证数据传输的完整性,在网络状态不稳定的情况下如何处理的问题。

为了实现上述目的,本发明采用的技术方案是:

一种虚拟桌面环境中的可控文件传输方法,其特征在于,包括以下步骤:

1)需要在桌面协议中新增文件拖拽的宏定义;比如vd_agent_clipboard_file用来标识文件拖拽,vd_agent_copy_file_grab,vd_agent_copy_file_start,vd_agent_copy_file_start_ret,vd_agent_copy_file_status,vd_agent_copy_file_data,这几个宏分布表示监测到有问题拖拽事件的发生,文件拖拽开始,文件拖拽对方准备就绪,传输状态,开始发送数据;

2)在虚拟机内的agent程序中监测文件拖拽事件;在虚拟机agent服务程序中,加入对鼠标拖拽事件的监听,当有文件被拖拽的时候,会触发事件回调函数;

3)当虚拟机中发现有文件拖拽事件后,在事件回调函数中,将一个隐藏窗口显示,这个窗口用来作为windows文件拖拽的的目标对象;

4)当接受文件拖拽的窗口接受到有文件拖入的时候,agent程序给协议客户端发送文件拖拽去请求vd_agent_copy_file_grab,并将文件名称、大小等信息发送给客户端;

5)协议客户端接收到文件拖拽请求后,检查本地磁盘空间,文件名称是否充分后,给agent程序发送一个是否可以开始传数据回应数据vd_agent_copy_file_start;

6)agent收到客户端发来的回应消息vd_agent_copy_file_start_ret后,如果不满足条件,则取消;如果满足条件,agent程序开始读取文件,并一字节流的方式分块把数据发送给客户端vd_agent_copy_file_start_ret;

7)客户端接收数据块vd_agent_copy_file_data,并写入本地文件。

本发明的有益效果是:

可以双向拖拽文件,并且可以在管理平台上对虚拟机的拖拽权限进行控制。桌面虚拟化最大的优点之一就是可以集中管理桌面,不仅可以对虚拟机桌面的配置管理,还可以管理桌面的使用场景,在一些涉密的场景下,可以在管理平台关闭从桌面往客户端拷贝文件的通道。

附图说明

图1为本发明的原理流程图。

图2为本发明的实施图。

图3为本发明的实施图。

图4为本发明的实施图。

图5为本发明的实施图。

具体实施方式

以下结合附图对本发明进一步叙述。

如图1所示,一种虚拟桌面环境中的可控文件传输方法,其特征在于,包括以下步骤:

1)需要在桌面协议中新增文件拖拽的宏定义;比如vd_agent_clipboard_file用来标识文件拖拽,vd_agent_copy_file_grab,vd_agent_copy_file_start,vd_agent_copy_file_start_ret,vd_agent_copy_file_status,vd_agent_copy_file_data,这几个宏分布表示监测到有问题拖拽事件的发生,文件拖拽开始,文件拖拽对方准备就绪,传输状态,开始发送数据;

2)在虚拟机内的agent程序中监测文件拖拽事件;在虚拟机agent服务程序中,加入对鼠标拖拽事件的监听,当有文件被拖拽的时候,会触发事件回调函数;

3)当虚拟机中发现有文件拖拽事件后,在事件回调函数中,将一个隐藏窗口显示,这个窗口用来作为windows文件拖拽的的目标对象;

4)当接受文件拖拽的窗口接受到有文件拖入的时候,agent程序给协议客户端发送文件拖拽去请求vd_agent_copy_file_grab,并将文件名称、大小等信息发送给客户端;

5)协议客户端接收到文件拖拽请求后,检查本地磁盘空间,文件名称是否充分后,给agent程序发送一个是否可以开始传数据回应数据vd_agent_copy_file_start;

6)agent收到客户端发来的回应消息vd_agent_copy_file_start_ret后,如果不满足条件,则取消;如果满足条件,agent程序开始读取文件,并一字节流的方式分块把数据发送给客户端vd_agent_copy_file_start_ret;

7)客户端接收数据块vd_agent_copy_file_data,并写入本地文件。

在管理平台上配置虚拟机的文件传输为启用,见图2,将要传输的文件拖拽到传输窗口里面,如下图3。



技术特征:

技术总结
一种虚拟桌面环境中的可控文件传输方法,解决如何保证数据传输的完整性,在网络状态不稳定的情况下如何处理的问题,可以双向拖拽文件,并且可以在管理平台上对虚拟机的拖拽权限进行控制。桌面虚拟化最大的优点之一就是可以集中管理桌面,不仅可以对虚拟机桌面的配置管理,还可以管理桌面的使用场景,在一些涉密的场景下,可以在管理平台关闭从桌面往客户端拷贝文件的通道。

技术研发人员:王力波
受保护的技术使用者:北京易讯通信息技术股份有限公司
技术研发日:2017.11.15
技术公布日:2018.03.09
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1