.net WriteableBitmap.某些PC上的WritePixels无法刷新

ndasle7k  于 2023-03-04  发布在  .NET
关注(0)|答案(2)|浏览(280)

非常奇怪的问题,我们遇到了一些windows个人电脑。我们有一个视频应用程序和一个部分使用writepixels更新一个writeablebitmap和显示帧到屏幕上。
代码为:

_currentframe.WritePixels(new Int32Rect(0, 0, data.Width, data.Height),
                          data.Bytes, data.Stride, 0);

NotifyPropertyChanged("CurrentFrame");

(其中"data"是像素数据的 Package 类)
它在99%的电脑上都能正常工作。至少有一台Windows 8.1笔记本电脑的图像没有刷新。我不知道为什么,其他的一切都能正常工作。
我不明白是什么原因导致某些PC上出现此问题-欢迎您提出任何建议。问题系统的一些详细信息:Win8.1(西班牙语),net 4.5.50709(但软件使用4.0)。
显卡驱动程序为英特尔核芯显卡4000

9vw9lbht

9vw9lbht1#

实际上,我们在某些计算机上绘制高性能图表的软件中重现了此错误。它似乎是某些Intel Graphics驱动程序和WriteableBitmap/.NET4/4.5的问题。
参见http://www.scichart.com/questions/question/zoom-not-working-properly-on-one-single-computer
我们认为发生的情况是WriteableBitmap一旦锁定/解锁就不允许任何进一步的更新。相同的代码在许多其他计算机上运行良好,唯一的其他解决方案是在出现此问题的系统上禁用WPF进程的硬件渲染。
另一种解决方法是更新装有英特尔核芯显卡的目标电脑上的显卡驱动程序。

6ojccjat

6ojccjat2#

这可能是由Intel驱动程序中的已知错误引起的。根据this issue report和此report from Intel,此错误在Intel驱动程序30.0.100.9667和更新版本中得到修复。

相关问题