WPF application goes into hang state after the exception HRESULT からの例外: 0x88980406
This happens after the application is run under auto test for longer duration, during which application passes through multiple screen transitions repeatedly(occurs when continuously run for more than 24 hrs). The stack details are as below.
Timestamp: 2010年11月28日 3:45:01;Message: FullText = System.Runtime.InteropServices.COMException (0x88980406): HRESULT からの例外: 0x88980406 場所 System.Windows.Media.Composition.DUCE.Channel.SyncFlush()
場所 System.Windows.Media.Composition.DUCE.CompositionTarget.UpdateWindowSettings(ResourceHandle hCompositionTarget, RECT windowRect, Color colorKey, Single constantAlpha, MILWindowLayerType windowLayerType, MILTransparencyFlags transparencyMode, Boolean isChild, Boolean isRTL, Boolean renderingEnabled, Int32 disableCookie, Channel channel) 場所 System.Windows.Interop.HwndTarget.UpdateWindowSettings(Boolean enableRenderTarget, Nullable`1 channelSet) 場所 System.Windows.Interop.HwndTarget.UpdateWindowSettings(Boolean enableRenderTarget) 場所 System.Windows.Interop.HwndTarget.UpdateWindowPos(IntPtr lParam) 場所 System.Windows.Interop.HwndTarget.HandleMessage(Int32 msg, IntPtr wparam, IntPtr lparam) 場所 System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 場所 MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 場所 MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) 場所 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter) 場所 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.Dispatcher.WrappedInvok开发者_StackOverflow社区e(Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter) 場所 System.Windows.Threading.Dispatcher.Invoke(DispatcherPriority priority, Delegate method, Object arg) 場所 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) 場所 MS.Win32.UnsafeNativeMethods.SetWindowPos(HandleRef hWnd, HandleRef hWndInsertAfter, Int32 x, Int32 y, Int32 cx, Int32 cy, Int32 flags) 場所 System.Windows.Interop.HwndSource.Resize(Size newSize) 場所 System.Windows.Interop.HwndSource.OnLayoutUpdated(Object obj, EventArgs args) 場所 System.Windows.ContextLayoutManager.fireLayoutUpdateEvent() 場所 System.Windows.ContextLayoutManager.UpdateLayout() 場所 System.Windows.UIElement.UpdateLayout() 場所 System.Windows.Interop.HwndSource.SetLayoutSize() 場所 System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value) 場所 System.Windows.Interop.HwndSource.set_RootVisual(Visual value) 場所 System.Windows.Controls.Primitives.Popup.PopupSecurityHelper.SetWindowRootVisual(Visual v) 場所 System.Windows.Controls.Primitives.Popup.SetRootVisualToPopupRoot() 場所 System.Windows.Controls.Primitives.Popup.CreateWindow(Boolean asyncCall) 場所 System.Windows.Controls.Primitives.Popup.OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) 場所 System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 場所 System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 場所 System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args) 場所 System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, OperationType operationType) 場所 System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, OperationType operationType, Boolean isInternal) 場所 System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value) 場所 System.Windows.Data.BindingOperations.SetBinding(DependencyObject target, DependencyProperty dp, BindingBase binding) 場所 System.Windows.Controls.Primitives.Popup.CreateRootPopup(Popup popup, UIElement child) 場所 System.Windows.Controls.ToolTip.HookupParentPopup() 場所 System.Windows.Controls.ToolTip.OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) 場所 System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 場所 System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e) 場所 System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args) 場所 System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, OperationType operationType) 場所 System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, OperationType operationType, Boolean isInternal) 場所 System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value) 場所 System.Windows.DependencyObject.SetValue(DependencyProperty dp, Boolean value) 場所 System.Windows.Controls.PopupControlService.RaiseToolTipOpeningEvent() 場所 System.Windows.Controls.PopupControlService.OnRaiseToolTipOpeningEvent(Object sender, EventArgs e) 場所 System.Windows.Threading.DispatcherTimer.FireTick(Object unused) 場所 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter) 場所 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.Dispatcher.WrappedInvoke(Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.DispatcherOperation.InvokeImpl() 場所 System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state) 場所 System.Threading.ExecutionContext.runTryCode(Object userData) 場所 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData) 場所 System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 場所 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 場所 System.Windows.Threading.DispatcherOperation.Invoke() 場所 System.Windows.Threading.Dispatcher.ProcessQueue() 場所 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 場所 MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) 場所 MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) 場所 System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter) 場所 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.Dispatcher.WrappedInvoke(Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) 場所 System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Boolean isSingleParameter) 場所 System.Windows.Threading.Dispatcher.Invoke(DispatcherPriority priority, Delegate method, Object arg) 場所 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) 場所 MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) 場所 System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) 場所 System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame) 場所 System.Windows.Threading.Dispatcher.Run() 場所 System.Windows.Application.RunDispatcher(Object ignore) 場所 System.Windows.Application.RunInternal(Window window) 場所 System.Windows.Application.Run(Window window) 場所 System.Windows.Application.Run()
Appreciate any leads in figuring out the issue.
精彩评论