簡體   English   中英

WPF 和 Windows 10 崩潰

[英]WPF and Windows 10 crash

我們有一個 WPF 應用程序,它需要與登錄和注銷相應 PC 的不同用戶保持打開更長時間(一夜之間)。

[更新] WPF 應用程序使用這里的單實例技術: http : //blogs.microsoft.co.il/blogs/arik/SingleInstance.cs.txt 單實例功能不是錯誤的原因

只有在以下情況下才會發生奇怪的崩潰:

  1. 操作系統是 Windows 10

  2. 以下用戶登錄/注銷順序必須發生:

帳戶 A 正在啟動應用程序並注銷或鎖定 PC。 帳戶 B 在夜間登錄,在 PC 上工作一段時間,然后注銷。 帳戶 A 在早上再次登錄。 應用程序運行,但 UI 被凍結/最小化。 單擊/嘗試調整大小時,出現以下錯誤:

   System.OutOfMemoryException: Insufficient memory to continue the execution of the program.
   at System.Windows.Media.Composition.DUCE.Channel.SyncFlush()
   at System.Windows.Interop.HwndTarget.UpdateWindowSettings(Boolean enableRenderTarget, Nullable`1 channelSet)
   at System.Windows.Interop.HwndTarget.UpdateWindowPos(IntPtr lParam)
   at System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage 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, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

我已經查看了這些帖子

我嘗試了上述帖子中的建議,但沒有成功。

此外,我無法始終如一地重現該問題。 似乎需要在登錄之間傳遞一些時間才能出現問題。

感謝您提出的任何建議。

似乎這是已知的 WPF 錯誤: https : //github.com/dotnet/wpf/issues/439 2020 年 6 月 3 日尚無解決方案。

System.Windows.Media.Composition.DUCE.Channel.SyncFlush() 中的 System.OutOfMemoryException 或 System.Runtime.InteropServices.COMException 通常是由 GDI 對象或 User 對象泄漏引起的。

您可以在任務管理器中監控這些泄漏。 為此選擇“GDI 對象”或“用戶對象”列。 如果 GDI 對象計數超過限制(Windows 默認為 10000),您的應用程序中會出現 OutOfMemory 異常。

檢查您的應用程序是否存在 System.Drawing 命名空間對象引用、您忘記銷毀的圖標句柄等的泄漏...

有關詳細信息,請參閱https://blogs.msdn.microsoft.com/dsui_team/2013/11/18/wpf-render-thread-failures/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM