前言

在使用VMWare虚拟机Unity的操作就不说了,这里只讲如何开发出这样的功能的,也就是阐述其技术原理!

有时候隔行如隔山,其实在软件开发行业内部更是如此,比如长期做WEB,做数据库,做ERP等等的程序员,是很难自己去分析并获得这样技术知识的。

所以下面的内容是分享给不熟悉的又有兴趣的人的!

如何理解VMWare的无缝模式(以及Parallels Desktop的融合模式)?

抛开虚拟的概念来看,这实际上是在两台电脑之间的操作,也就是主机电脑远程映射操作客户机电脑的应用。

注意这里的核心是远程操作,底层协议其实也不存在自创,也不神秘,而是大名鼎鼎的RDP协议!

RDP协议设计初衷

要知道RDP的全称其实是Remote Display Protocol,也就是远程显示协议

微软最开始设计RDP协议的时候,其传输主体是围绕应用的UI内容,而如今我们所熟知的远程桌面由于名气太大,应用太普遍,以至于很多人将RDP理解为Remote Desktop Protocol,也就是远程桌面协议?

远程桌面 or 远程应用?

RDP既然是以应用为主体,那远程桌面为啥看起来像将整个远程电脑的系统全部”搬过来“呢?其实也很简单,将桌面也理解为一个独立应用即可!

大部分人平时接触最多的是远程桌面,比如Windows自带的远程桌面连接,VNC,FreeRDP, RdpAdmin等等软件,这类软件多是因为符合日常操作习惯!

那么有没有一种方法让你只远程操作一个应用,而不是整个桌面呢?答案是肯定的,而且微软在WIN2008/WIN7后为了在虚拟化应用市场上与VMWare, Ctrix等大厂竞争,也是自带提供了相应的模块,叫做RemoteApp!

虚拟机融合模式技术原理

话题到了这里已经很清晰了,可能你还想进一步了解如何开发RemoteApp,这部分微软的RDP也有相应文档,但大部分是关于如何配置模块,配置应用,以及在客户端如何远程启动应用,使用场景也主要是企业客户,普通人并不是很需要!

如果想了解更多可以自行百度或者在Windows搜索条输入RemoteApp,会出来一个”RemoteApp与远程桌面”的菜单项,打开后再去研究。

如何开发远程应用?

个人开发者可以了解一下开源项目FreeRDP,该项目很早就支持了RemoteApp技术,VMWare和Parallels其实内部也就是使用了该技术,且作为其虚拟化应用的技术基础之一,目前FreeRDP还支持Android系统,在使用该技术的应用中,你还可以实现比如在手机上远程打开操作一个Windows程序的功能,且效果极佳,绝对不是那种图像比例缩放的远程操作类能比的,因为从RDP协议原理上来讲,其实就是原生UI的重绘!

 

原文地址:http://www.cnblogs.com/caibirdy1985/p/VMWare_Unity_Technology_RDP_Remote_App.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性