2013-04-18 6 views
5

Mam debugowanie aplikacji WPF, która zawiesza się po uruchomieniu z nieobsługiwanym wyjątkiem System.IO.FileLoadException.Przyczyny wyjątku System.IO.FileLoadException w aplikacji OnStartup aplikacji WPF

Użyłem Assembly Binding Log Viewer, aby sprawdzić, czy nie ma błędów ładowania złożenia, a cały kod w override OnStartup jest zawijany w próbie catch.

Po wykluczeniu wiązania złożenia jako przyczyny wyjątku, jakie są inne możliwe przyczyny, na które powinienem zwrócić uwagę?

Poniżej znajdują się odpowiednie wpisy w dzienniku zdarzeń:


Pierwszy błąd ze źródła "ApplicationError"

Faulting application name: CompanyProductManager.exe, version: 4.2.0.0, time stamp: 0x514a20ba 
Faulting module name: KERNELBASE.dll, version: 6.1.7601.18015, time stamp: 0x50b8479b 
Exception code: 0xe0434352 
Fault offset: 0x0000000000009e5d 
Faulting process id: 0xf18 
Faulting application start time: 0x01ce3c6ce70ee3f8 
Faulting application path: C:\Users\My_User\AppData\Local\Apps\2.0\VJ12169A.3AG\6445EVK6.26Y\wmsd..tion_9fb3931a66281a0b_0004.0000_68586becb8f48f17\CompanyProductManager.exe 
Faulting module path: C:\Windows\system32\KERNELBASE.dll 
Report Id: 2588c97b-a860-11e2-be7c-3cd92b4a0af4 

Drugi błąd ze źródła”NET Runtime "

Application: CompanyProductManager.exe 
Framework Version: v4.0.30319 
Description: The process was terminated due to an unhandled exception. 
Exception Info: System.IO.FileLoadException 
Stack: 
    at CompanySI.CompanyProduct.CompanyProductManager.App.OnStartup(System.Windows.StartupEventArgs) 
    at System.Windows.Application.<.ctor>b__1(System.Object) 
    at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) 
    at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) 
    at System.Windows.Threading.DispatcherOperation.InvokeImpl() 
    at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) 
    at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) 
    at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) 
    at System.Windows.Threading.DispatcherOperation.Invoke() 
    at System.Windows.Threading.Dispatcher.ProcessQueue() 
    at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 
    at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) 
    at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object) 
    at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) 
    at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) 
    at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) 
    at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) 
    at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef) 
    at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef) 
    at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame) 
    at System.Windows.Application.RunInternal(System.Windows.Window) 
    at System.Windows.Application.Run() 
    at CompanySI.CompanyProduct.CompanyProductManager.App.Main() 
+0

Miałem podobny błąd jak twój pierwszy "ApplicationError". Poniższa odpowiedź na pytanie "cichy ton" pomogła mi rozwiązać mój problem. Musiałem więc włączyć pomijanie weryfikacji, ponieważ moje złożenia zostały podpisane tylko z kluczem publicznym i otrzymałem opóźnienie podpisane później. – donttellya

+0

Wygląda podobnie do tego .. http://stackoverflow.com/questions/7450634/system-io-fileloadexception-when-running-c-sharp-program-on-a-different-computer – Mick

+0

i to ... http://community.sharpdevelop.net/forums/t/21717.aspx. .. czy uszkodzony dysk twardy lub ssd? – Mick

Odpowiedz

0

Po prostu zgaduję, ale widziałem uszkodzony plik user.config zrobić coś takiego wcześniej z innej aplikacji. To było chwilę temu i nie pamiętam dokładnie, jaki wyjątek został rzucony. Sprawdź, czy masz go w katalogu AppData (lub w innym miejscu) i usuń go.

+0

Dzięki, ale to nie rozwiązało problemu. – dmck

2

Ładowanie zespołu podpisu z opóźnieniem na komputerze, na którym pominięto pominięcie weryfikacji, może spowodować podobny błąd.