我们遇到过一些Windows PC的奇怪问题。我们有一个视频应用程序,一部分使用WritePixels更新WriteableBitmap并显示帧到屏幕。
代码是:
_currentframe.WritePixels(new Int32Rect(0,0,data.Width,data.Height),data.Bytes,data.Stride,0);
NotifyPropertyChanged( “设置currentFrame”);
('data'是我们像素数据的包装类)
99%的计算机都能正常运行。在至少一台Windows 8.1笔记本电脑上,图像不会刷新。我不知道为什么,其他一切都有效。
我不明白在某些电脑上会导致失败的原因 - 欢迎提出任何建议。问题系统的一些细节:Win8.1(西班牙语),净4.5.50709(但软件使用4.0)。
图形驱动程序是Intel HD Graphics 4000
答案 0 :(得分:1)
我们实际上已经在我们的软件中的某些计算机上重现了这个错误,以绘制高性能图表。某些英特尔图形驱动程序和WriteableBitmap / .NET4 / 4.5似乎存在问题。
请参阅http://www.scichart.com/questions/question/zoom-not-working-properly-on-one-single-computer
我们认为正在发生的是WriteableBitmap一旦锁定/解锁,一旦不允许任何进一步的更新。相同的代码在许多其他机器上运行良好,唯一的其他解决方法是在出现此问题的系统上禁用WPF进程的硬件渲染。
另一种解决方法是使用Intel HD Graphics更新目标PC上的图形驱动程序。