2011-01-19 153 views
2

这实际上是我昨天问了一个问题的重新状态,因为我得到的一个答案似乎并不理解我的问题,所以我一定不清楚。我的错。WPF策略避免显卡敏感度?

因为WPF依赖于DirectX,所以它对卡片和驱动程序的内部非常敏感。我有一个案例,一些简单的WPF程序在一个具有主要品牌高性能图形卡和当前驱动程序的现代全新PC上渲染不正确。如果我禁用图形卡,问题就会消失(所以它使用集成的图像处理器)。所以我知道这是卡或司机。这些程序在我尝试过的其他几款旧PC上都可以正常显示。

由于WPF程序员是否有部署策略或编程策略,我们可以使用这些策略来最大限度地降低这类风险和风险?如果我们不能指望主要品牌的PC和显卡上的WPF渲染正确,我们可以用什么可以?像WPF这样的问题有多常见?

原帖:WPF graphics card problem

回答

3

如果您有硬件相关的呈现问题,你可以解决它通过强制软件渲染。 (根据我的经验,这几乎从来没有必要;在大多数视频故障的情况下,确保客户拥有最新驱动程序已经解决了这个问题。作为WPF开发人员,我不担心这个问题。)

如果您使用WPF 4,请使用RenderOptions.ProcessRenderMode为当前进程强制进行软件渲染。

在WPF 3.5中,您唯一的选择是通过编辑注册表来禁用所有WPF应用程序的硬件呈现。创建/打开HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics密钥并创建值为0x1的DWORD值DisableHWAcceleration

有关更多详细信息,请参阅Software Rendering Usage in WPF

+0

谢谢 - 这正是我要找的信息! ....为确保客户拥有当前的驱动程序,大多数WPF应用程序是否都是针对目标用户编写的,而开发人员对此有任何意见,例如内部企业用户群?我为音乐家编写调度软件 - 普通用户使用随机普通PC。 WPF是不好的选择吗? – 2011-01-19 16:04:29