Recently encountered a problem. Windows loaded at the same time resize a black screen or a direct crash, and the survey found that the WPF backend render UI crashes when rendering to DirectX.
Hardware Environment:WES7 +. Net4.0
There are 2 threads explaining about WPF such as the following:
WPF applications start with two threads: one for processing rendering and one for managing the UI. The rendering thread effectively hides in the background, while the UI thread receives input, handles events, draws the screen, and executes application code.
The problem encountered is that the thread used to process the rendering is hung, exceptions such as the following: Exception from hresult:0x88980406
Stack Trace:0000000021a4d8d8 000007fef7a66869 [helpermethodframe:0000000021a4d8d8]0000000021a4da20 000007fee485ae0f System.windows.media.composition.duce+channel.syncflush () * * * warning:unable to verify checksum for PresentationCore.ni.dll0000000021a4dae0 000007fee3e95615 System.Windows.Interop.HwndTarget.UpdateWindowSettings ( Boolean, System.Nullable ' 1<channelset>) 0000000021a4dd10 000007FEE3EABFEC System.Windows.Interop.HwndTarget.UpdateWindowSettings (Boolean) 0000000021a4dd80 000007fee3eabd0e System.Windows.Interop.HwndTarget.UpdateWindowPos (INTPTR) 0000000021a4dee0 000007fee3e95fd7 System.Windows.Interop.HwndTarget.HandleMessage (MS. Internal.Interop.WindowMessage, IntPtr, IntPtr) 0000000021a4e070 000007fee3e93d14 System.Windows.Interop.HwndSource.HwndTargetFilterMessage (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 0000000021A4E0C0 000007fee4b2b450 MS. Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
reasons and suggestions for Microsoft Analytics1. Update your video drivers, and/or try different video hardware in the problem machine (s)."Trying 560, 660, 770, 970 will not solve this problem. Tried 320.18, 320.49, 353.30 and other drivers will not solve the problem "
2. Disable Hardware Rendering. As a quick test, you can use the Disablehwacceleration registry value discussed here. You would set the value of 1 in order to disable WPF ' s hardware rendering pipeline. Note that this is affects all WPF applications running in that user's session, so is advised you might is impacting more than One application. There is other options for disabling hardware acceleration at a more granular level. Starting in. Net 3.5, where can disable it programmatically on a per-window basis by using the Hwndtarget.rendermode Propert Y. Starting in. Net 4.0, where can disable it programmatically on a per-process basis by using the Renderoptions.processrend Ermode property."Changing the registration form will not solve the problem"
3. Upgrade to the latest version and service pack level of the. Net Framework available for your target platform. 【after upgrading to net 4.5. Problem solving. After downgrading to 4.0. Appears again "
4. Disable the use of windows.allowstransparency and popup.allowstransparency in your application."The allowstransparency of the wrapped application window is false"
5. If you is on Windows XP or Windows 2003, test on a newer operating system, and upgrade if possible."no test. Upgrading the OS is unlikely "
6. If System.outofmemoryexceptions is being reported, then monitor the process's memory usage in Performance Monitor; Particularly the Process\Virtual Bytes, Process\Private Bytes, and. NET CLR memory\# Bytes in all heaps counters. Also Monitor the User Objects and GDI Objects for the process in Windows Task Manager. If You can determine this a specific resource is being exhausted and then troubleshoot the application to fix whatever is Cau Sing that resource consumption. Ultimately that should resolve the system.outofmemoryexception."View memory and handles, etc., no memory leaks"
Microsoft notes
Net 4.5 resolves this issue:
WPF background Render thread crashes, Exception from hresult:0x88980406