【问题标题】:Is WPF a safe choice for my application?WPF 是我的应用程序的安全选择吗?
【发布时间】:2011-01-18 17:33:08
【问题描述】:

我正在维护一个 Windows 窗体应用程序,该应用程序使用叠加层绘制地图数据。我一直在考虑将绘图层迁移到 WPF,以利用显卡渲染。然而,在过去的几周里,我开始怀疑:

使用当前的 Windows 窗体代码库,我可以期望应用程序在每次安装时都以相同的方式运行。 WPF 更依赖显卡驱动的质量,我没有全面覆盖的测试资源。

我特别想听听那些在自己公司以外或混合机器群体中交付 WPF 应用程序的人的意见 - 硬件和驱动程序特定的错误是否会给您带来很大的支持负担?

【问题讨论】:

  • 不是我自己的经验,所以不作为答案发布 - 但微软正在使用 WPF 发布 Visual Studio 2010。我认为他们将拥有比大多数其他开发人员群体更多的安装基础。
  • 我发现 Visual Studio 2010 的性能非常糟糕。我希望与他们的旗舰 IDE 相关的性能/WPF 问题能够刺激对 WPF 的性能投资。
  • 有趣的是,VS2010 在我的笔记本电脑 (NVidia) 上以可接受的速度运行。然而,Evernote 完全放弃了 WPF,并用原生 C++ 代码进行了重写。

标签: wpf windows


【解决方案1】:

我们的 WPF 应用程序在 Windows XP SP2(最低)上运行,并且除了在某些机器上之外还可以,如果应用程序正在运行并且 PC 进入屏幕保护模式,它会蓝屏并导致机器崩溃。这似乎与显卡驱动程序版本有关 - 我们的一些用户运行双显示器。

我们还没有解决这个问题。

【讨论】:

  • 这就是让我害怕的事情:当我将我的 Windows 窗体应用程序从单显示器 XP 移动到双显示器 Windows 7 设置时,所有问题都是在错误的显示器上弹出几个对话框.
【解决方案2】:

WPF 使用 Direct3D 进行渲染,如有必要,可使用软件。我最好的猜测是,一些驱动程序说他们支持硬件中的某些东西,但实际上并没有正确处理它,这就是我们看到这些不兼容问题的时候。

您的问题的答案取决于您愿意与机器的兼容性低于当前代码库的兼容性。如果您曾经访问过 PC 游戏支持论坛,您会看到各种关于图形问题的帖子。由于大多数 PC 将越来越多地与 Vista/Win7 兼容并因此支持 D3D9/10,因此问题应该会减少。真正的问题是,为您做出的权衡是否值得。

根据我自己部署 WPF 应用程序的经验,我遇到了 mediaelement 在两台非常相似的 PC 上无法正常工作的问题。但无论如何,视频子系统是一种不同的蠕虫。否则没关系,但我没有在图形上做任何特别的事情,只是标准的 xaml。

【讨论】:

  • 感谢您提供的数据点:我不会使用视频,但我确实有比简单的表单输入更高级的图形元素。
【解决方案3】:

我们在使用特定显卡供应商的驱动程序时遇到了一些问题。观察到蓝屏、对角像素位移和应用程序崩溃。但是,可以在每个应用程序的基础上关闭硬件加速。可悲但真实,这是当前的解决方法。

如前所述,我希望 VS2010 版本有助于提高稳定性。也许有一天我们会在显卡驱动程序的发行说明中看到与 WPF 相关的修复列表。以及游戏引擎的最新修复XYZ

【讨论】:

  • 我会考虑这个答案,等几个月看看VS2010的影响。
猜你喜欢
  • 2011-12-16
  • 1970-01-01
  • 2010-09-30
  • 2013-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-29
  • 1970-01-01
相关资源
最近更新 更多