在 Windows XP 下通过远程桌面渲染 WPF 是不是存在问题?

Posted

技术标签:

【中文标题】在 Windows XP 下通过远程桌面渲染 WPF 是不是存在问题?【英文标题】:Are there problems with rendering WPF over Remote Desktop under Windows XP?在 Windows XP 下通过远程桌面渲染 WPF 是否存在问题? 【发布时间】:2010-09-16 21:59:21 【问题描述】:

我听说 Windows XP 上的远程桌面不支持 WPF 原语。这意味着如果您在 vista 机器上运行 WPF 应用程序并将其显示在 XP 机器上(通过远程桌面),则显示将作为压缩位图发送。

此问题已在通过 DirectX 11 (?) 的 Vista-Vista 通信中得到解决,但在 XP 上不可用。这里显然会影响性能,我想在着手开发 WPF 应用程序之前了解它。

可以在此处找到有关此主题的一些信息:

http://blogs.msdn.com/tims/archive/2007/01/05/comparing-wpf-on-windows-vista-v-windows-xp.aspx

查看上述链接中的评论(引用):


对于 SpongeJim 的问题,这是由 MIL(媒体集成层)完成的,它是处理合成的 WPF 的底层核心。在 Vista/Vista 远程桌面连接上,MIL 原语被远程化,然后重新构成。在其他组合(例如 2003/XP)上,被远程处理的是位图,这显然更加占用带宽。有关此主题的更多深入信息,请参阅 Greg Schechter 的博客,尤其是在此条目中:http://blogs.msdn.com/greg_schechter/archive/2006/06/09/623566.aspx


是否有人对此问题有任何经验或更多最新信息?

【问题讨论】:

【参考方案1】:

从 .NET 3.5 SP1 开始,所有 WPF 图形都作为位图进行远程处理,即使在 Vista 到 Vista 的通信中也是如此。来自http://blogs.msdn.com/jgoldb/archive/2008/05/15/what-s-new-for-performance-in-wpf-in-net-3-5-sp1.aspx:

我们现在在所有情况下都作为位图远程。

原因是现在 WPF 3.5 SP1 使用新的图形 DLL (wpfgfx.dll) 并且无法进行某些更改 到 Vista 现有的图形 DLL (milcore.dll) 也被 DWM。

正如其他评论者所指出的,性能在很大程度上取决于应用程序 UI 的设计。潜在的结果是您只需要在一种情况下进行测试;无论客户端或服务器如何,远程处理性能现在应该是相同的。

【讨论】:

【参考方案2】:

一旦这些应用程序更新为可与 WPF 一起使用,我们就可以同时使用 Remote Admin 和 Bomgar 进行远程处理。我们已经测试了 XP 到 XP、XP 到 Vista、Vista 到 XP 以及 Vista 到 Vista。我们最初只遇到工具提示和组合框下拉/弹出窗口的问题。在过去六个月左右的时间里,一切都很好。

我刚刚测试了从我的 XP 桌面远程访问 Vista 虚拟机,我们的应用看起来很棒(如果运行有点慢,但它是一个虚拟机......)我切换到低质量的 8 位颜色和性能问题几乎完全消失了。渐变等在我们的窗口背景等上丢失了,但它绝对仍然可用。

我不认为你应该有任何功能问题,只有轻微的性能问题。

【讨论】:

【参考方案3】:

我猜这取决于您的 wpf 应用程序。 如果你有很多渐变、动画、画笔等......你的应用程序肯定会在网络上运行得更慢......

【讨论】:

很好,但是远程处理基本体和重建屏幕和远程处理压缩位图之间存在巨大差异!

以上是关于在 Windows XP 下通过远程桌面渲染 WPF 是不是存在问题?的主要内容,如果未能解决你的问题,请参考以下文章

XP怎样关闭Windows远程桌面连接?求助

Windows XP 远程桌面 组Remote Desktop Users问题

win7远程桌面连接vmware xp怎么操作

windows xp远程连接出来错误“由于数据加密错误,这个会话将结束.请重新连接到远程计算机

电脑出现远程桌面控制连接(显示灰色无法更改)怎样关闭

电脑连接不上服务器远程桌面,如何解决?