使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。



症状

在.NET Framework 3.5 Service Pack 1 (SP1) 中使用 Windows Presentation Foundation (WPF) 呈现图形时,可能会遇到以下问题之一-基于应用程序。


问题 1

在 WPF 应用程序中的VisualBrush.Visual属性的值更改时,该应用程序崩溃。

问题 2

当您执行下列操作之一时,呈现 WPF 应用程序线程中发生内存泄漏︰

  • 您可以使用软件呈现管道呈现三维场景,其中包括一个VisualBrush对象或DrawingBrush对象。例如,您使用软件呈现管道时执行下列操作之一︰

    • 您可以通过使用RenderTargetBitmap类呈现场景。

    • 打印的场景。

    • 呈现层属性设置为 0 时。

    • 通过远程桌面连接中呈现的场景。

  • 在不使用 Windows 显示驱动程序模型 (WDDM) 的计算机上使用WriteableBitmap类呈现场景。

  • 使用硬件呈现管道呈现不使用 WDDM 的计算机上使用平铺的VisualBrush对象或平铺的DrawingBrush对象的场景。


问题 3

WPF 应用程序使用分层窗口崩溃,当您执行下列操作之一︰

  • 使计算机进入等待状态,使用 Windows XP 显示驱动程序模型 (XPDDM),然后在您继续计算机从待机状态。

  • 切换到全屏显示控制台模式时在 Windows XP 上。

原因

原因 1

因为一般错误从呈现线程在线程中的操作进行排序不正确时,将出现此问题。这些操作会导致分离从空父对象的子对象。

例如,一个可视对象必须删除从VisualBrush对象之前与VisualBrush对象分离。 但是,若要删除对象的可视对象的操作可能不正确排序。因此,从空父对象中分离的可视对象。

原因 2

由于引用计数错误呈现线程中的发生此问题。

原因 3

因为 Win32 错误代码处理不正确,将出现此问题。

解决方案

若要解决此问题,应用下面的 Microsoft 知识库文章中描述的修复程序包:

2667241更新汇总是可用的 Windows Presentation Foundation (WPF) 为 Microsoft.NET Framework 3.5

详细信息

堆栈输出

System.InvalidOperationException: An unspecified error occurred on the render thread.
at System.Windows.Media.MediaContext.NotifyPartitionIsZombie(Int32 failureCode)
at System.Windows.Media.MediaContext.NotifyChannelMessage()
at System.Windows.Interop.HwndTarget.HandleMessage(Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)

状态

Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×