2009-11-01 7 views
2

WPF 응용 프로그램이 있습니다. 컴퓨터는 "대기 모드"로 들어가면 알 수없는 예외가 발생하여 충돌합니다. 이것은 내 창이 투명하다는 것과 관련이있을 수 있습니다. .NET 3.5 with SP1을 사용하고 있습니다. 누구나 아이디어가 있습니까?대기 모드로 들어가면 WPF 응용 프로그램이 충돌합니다.

편집 1 : 윈도우가 visibility.Collapsed에있을 때 - 응용 프로그램이 충돌하지 않습니다. 투명성이없는 창 - 충돌도 발생하지 않습니다. 이것은 스택 추적입니다.

System.InvalidOperationException : 렌더링 스레드에서 알 수없는 오류가 발생했습니다. System.Windows에서 System.Windows.Interop.HwndTarget.HandleMessage에서 System.Windows.Media.MediaContext.NotifyPartitionIsZombie System.Windows.Media.MediaContext.NotifyChannelMessage에서 (INT32 failureCode)() (INT32의 MSG,을 IntPtr의 WPARAM, LPARAM을 IntPtr의)에서 MS.Win32.HwndWrapper.WndProc (IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean & 처리됨)에서 .Interop.HwndSource.HwndTargetFilterMessage (IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, 부울 & 처리됨) System.Windows.Threading.ExceptionWrapper.TryCatchWhen에서 System.Windows.Threading.ExceptionWrapper.InternalRealCall에서 .Win32.HwndSubclass.DispatcherCallbackOperation (객체 O) (대리인 콜백 오브젝트 인수 부울 isSingleParameter) (객체의 소스는 위임 콜백, 인수 개체 부울 isSingleParameter, Delegate catchHandler)에서 System.Windows.Threading.Dispatcher.WrappedInvoke (대리자 콜백, 개체 args, 부울 isSingleParameter, 대리자 catchHa ndler) System.Windows.Threading.Dispatcher.InvokeImpl (DispatcherPriority 우선 순위에서, 타임 아웃 시간 범위는 위임 방법은, MS에서의 인수 System.Windows.Threading.Dispatcher.Invoke 부울 isSingleParameter) (DispatcherPriority 우선, 위임 방법, 개체를 ARG) 개체 System.Windows에서 System.Windows.Threading.Dispatcher.PushFrameImpl에서 MS.Win32.UnsafeNativeMethods.DispatchMessage (MSG & MSG)에 .Win32.HwndSubclass.SubclassWndProc (HWND를 IntPtr, INT32의 MSG,을 IntPtr의 wParam, lParam에 IntPtr입니다) (DispatcherFrame 프레임) System.Windows에서 System.Windows.Application.RunInternal (윈도우 윈도우)에서 System.Windows.Application.RunDispatcher에서 .Threading.Dispatcher.PushFrame System.Windows.Threading.Dispatcher.Run (AT (DispatcherFrame 프레임)) (개체 무시) C : \ Documents and Settings \ Lehavi \ My Documents \ Working 버전 \ Widget \ obj \ Release \ App에있는 Widget.App.Main()의 System.Windows.Application.Run()에서 .Application.Run (윈도우 윈도우). g.cs : System.AppDomain._nExecuteAssemb에서 0 행 LY (조립 조립체 문자열 [] 인수) System.Runtime.Hosting.ManifestRunner.ExecuteAsAssembly에서 System.Runtime.Hosting.ManifestRunner.Run (부울 checkAptModel)에서 System.AppDomain.nExecuteAssembly에서 (조립 조립체 문자열 []에 args) () 문자열 [] activationCustomData) System.Activator.CreateInstance (activationContext activationContext)에서 System.Runtime.Hosting.ApplicationActivator.CreateInstance (activationContext activationContext)에서 Microsoft.VisualStudio.HostingProcess에서 System.Runtime.Hosting.ApplicationActivator.CreateInstance (activationContext activationContext에서 System.Threading.ThreadHelper.ThreadStart에서 System.Threading.ExecutionContext.Run (ExecutionContext에 ExecutionContext에, ContextCallback 콜백, 객체 상태)()에서 System.Threading.ThreadHelper.ThreadStart_Context (객체 상태)에서 .HostProc.RunUsersAssemblyDebugInZone()

+0

이 응용 프로그램은 작성했거나 개발 한 응용 프로그램입니까? 그렇다면 예외로 인해 더 많은 정보를 수집 할 수없는 이유는 무엇입니까? 그렇지 않은 경우이 질문은 SU에 속합니다. – Jherico

+0

디버거를 부착하여 관리 예외인지 또는 콜 스택을 얻었습니까? – bitbonk

+0

전체 스택 추적을 첨부 할 수 있습니까? 추측하지 않고도 누구나 도움을받는 것은 불가능합니다. –

답변

1

acess 위반의 경우 또는 이와 유사한 관리되지 않는 예외가 발생하면 그래픽 카드 드라이버의 모든 하드웨어 가속을 비활성화하고 문제가 계속 발생하는지 확인하십시오. 그렇지 않으면 드라이버 문제입니다. 지금까지 WPF 응용 프로그램에서 본 유일한 관리되지 않는 예외는 가난한 드라이버와 관련이 있습니다.

관련 문제