VM下的WPF开发是否可行?

时间:2009-02-08 13:01:55

标签: wpf vmware development-environment

在阅读how to keep your dev machine from slowing down后,我想起了一年前为我的开发机器构建虚拟机的好意。

但是,我正在Vista x64上开发WPF和SilverLight GUI。我可以在VM下运行x64版本的操作系统,但我担心WPF的图形性能,特别是运行Expression Blend。我希望需要GPU!

我目前有用于XP 32位测试的Virtual PC VM。对于WPF,VMWare的版本或版本可能更好吗?如果是这样,是否有任何版本差异?我已经可以在OS / X上使用我的VMWare Fusion创建虚拟机,所以只需使用免费的VMWare播放器就可以了 - 我无法找到有关播放器和工作站之间GPU支持差异的任何评论。

我的主要Windows开发机只是一台配备4GB内存的戴尔笔记本电脑(Latitude 830),但是我必须在笔记本电脑上进行客户访问,所以我不打算购买额外的台式机。

7 个答案:

答案 0 :(得分:5)

自己尝试过,我会重新建议避免使用VM进行WPF开发。 WPF引擎依赖于DirectX加速来呈现内容,并且VMX上的DirectX支持不完整(尽管比MS Virtual PC不存在的DirectX支持更好)。

您将面临的问题是,Visual Studio和Expression会在您处理XAML时不断重新渲染XAML,这需要大量的GPU带宽。在VM内部工作根本不会削减它,并且根据您的设置,您将在VS 2008中遇到黑/空或无响应的设计器窗口。

如果可能的话,坚持在本地桌面上进行开发。

答案 1 :(得分:1)

如何将开发环境置于VM中有助于提高工作效率?

如果您的开发工具减慢了计算机速度,这将使主机操作系统快速而快速,但您必须在开发工具所在的慢速VM中工作 - 所以我怀疑您保留了用于计算机的部分通过使你使用的部件工作得更慢来快速玩纸牌。

这有多大效果?

此外,当您拥有大量内存并且VM文件位于与Windows安装不同的物理磁盘上时,VM的效果最佳 - 两者都不容易在笔记本电脑上完成。

答案 2 :(得分:1)

Parallels 5似乎比我在WPF上的Fusion VM快得多。 VS2010的加载速度要快得多,而且没有所有的视频故障...这有点糟糕,因为我过去几年一直在使用Fusion并且不想切换,但到目前为止,P5看起来好多了WPF

答案 3 :(得分:0)

这真的不应该那么糟糕 - 我希望注意到一点点差异,但出于开发目的,使用本地VM播放器将会起作用。

你真正遇到的唯一问题就是尝试在远程桌面上开发带有大量动画/视频的WPF等。

BTW,作为一种可能的替代方案,让VM与大多数开发工具共享逻辑磁盘分区,并在必要时在本地运行Expression Blend并打开项目。

答案 4 :(得分:0)

VirtualBox 3.0在Windows中添加了对DirectX 8/9的支持 - 请参阅http://www.virtualbox.org/manual/UserManual.html#guestadd-3d,这可能有所帮助。我还没有尝试过。

答案 5 :(得分:0)

目前我找到了一个解决方案:通过RDP连接到VMWare。这样Microsoft Expression就不会出现故障。

(我第一次看到它时,我认为微软真的发布了这样一款不成熟的产品)

我会试着找出是否可以在没有通过RDC登录的情况下关闭DirectX(或强制使用DirectX 8)。

答案 6 :(得分:0)

我找到了更好的方法:拒绝访问d3d9.dll。删除它或编辑安全权限(就像我一样),以便无法访问它。 WPF: 0, 1, 2中有几个层次。

2弄乱了一切。 0不如1. DisableHWAcceleration强制等级为0.除了禁止d3d9.dll之外,我没有找到任何其他方法。

令人高兴的是,它奏效了。 Microsoft Expression在没有混乱的情况下工作。虽然我不确定该等级是否真的是1。