6

在阅读了如何防止你的开发机器变慢之后,我想起了一年前我为我的开发机器构建一个 VM 的良好意图。

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

我目前有用于 XP 32 位测试的 Virtual PC VM。那个版本或 VMWare 的某个版本是否可能更适合 WPF,如果是,是否有任何版本差异?我已经可以在 OS/X 上使用我的 VMWare Fusion 创建 VM,因此只需使用免费的 VMWare Player 就可以了——我无法找到任何关于 Player 和 Workstation 之间的 GPU 支持差异的评论。

我的主要 Windows 开发机器只是一台具有 4GB RAM 的戴尔笔记本电脑(Latitude 830),但我必须在笔记本电脑上工作以进行客户访问,所以我不倾向于购买额外的台式机。

4

7 回答 7

6

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

您将面临的问题是,Visual Studio 和 Expression 在您处理 XAML 时都会不断地重新呈现您的 XAML,这需要大量的 GPU 带宽。在 VM 中工作并不能解决问题,并且根据您的设置,您将在 VS 2008 中体验黑色/空白或无响应的设计器窗口。

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

于 2009-02-09T09:33:27.793 回答
1

将您的开发环境放入 VM 中如何提高您的工作效率?

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

这是如何生产的?

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

于 2009-02-08T15:50:39.797 回答
1

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

于 2010-03-02T17:46:20.790 回答
0

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

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

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

于 2009-02-09T03:21:22.117 回答
0

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

于 2009-07-15T15:47:16.333 回答
0

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

(第一次看到还以为微软真的发布了这么不成熟的产品)

我将尝试找出是否可以在不通过 RDC 登录的情况下关闭 DirectX(或强制 DirectX 8)。

于 2010-02-25T12:26:53.127 回答
0

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

2 把一切都搞砸了。0 不如 1 快。DisableHWAcceleration强制 tier 为 0。除了 forbidding 之外,我没有找到任何方法d3d9.dll

令人高兴的是,它奏效了。Microsoft Expression 开始工作时没有杂乱无章。虽然我不确定层级是否真的是 1。

于 2010-02-26T10:38:03.710 回答