【发布时间】:2014-05-13 11:02:42
【问题描述】:
我有 WPF 应用程序。因为我们的 Citrix 没有独立的图形卡。我必须只设置 RenderMode en Software :
RenderOptions.ProcessRenderMode = System.Windows.Interop.RenderMode.SoftwareOnly;
它在我的索尼二重奏 13 中仍然可以流畅运行:
Windows 8.1;
Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz (4 CPUs), ~1.6GHz
8192MB RAM
Intel(R) HD Graphics Family; 1792 MB approx memory total;
DirectDraw speedup activated; Direct3D speedup activated; AGP texture activated
但它在 Citrix 服务器上运行不佳(仅执行了一个应用程序):
Windows Server 2008 R2 Standard 64 bits (6.1m version 7601)
VMware Virtual Platform
Intel(R) Xeon(R) CPU x5670 @ 2.93GHz (4 CPUs), ~2.9GHz
4096MB RAM
No graphic carte info
我证明我的应用程序在使用 Windows 性能工具的软件模式下运行,我的应用程序的所有窗口都是紫色的(这意味着绘制软件渲染)
除了Graphic Carte,我们的Citrix服务器比我的超极本索尼更强大,但为什么效果不好?
谢谢
【问题讨论】:
-
WPF 不适用于远程桌面类型的东西。确保您使用的任何软件都与 WPF 兼容。切换到
SoftwareOnly是一个糟糕的主意。获取合适的机器来运行 WPF 应用程序。 -
@HighCore 嗨,我需要有充分的理由说服我的老板。而此时,没有其他合适的机器来运行 WPF。他强迫我为此寻找解决方案。你知道我可以说服我的老板吗?任何可以帮助我的链接?
-
Citrix 有没有官方信息说他们支持/不支持 WPF?
-
不,它支持 WPF。我正在远程桌面上运行我的应用程序。我有同样的问题。由于延迟和高 UI 刷新。我正在使用 WPF 性能分析工具测试我的经理。我有一个很好的性能模式(仅刷新帧速率和脏矩形附加速率)。这意味着我的应用程序已经消除了所有不必要的 UI 刷新 @HighCore
-
在我的测试远程桌面,事件 Console.Writeline() 输出比本地输出速度慢很多。比本地输出慢 4 倍