Una delle nostre applicazioni .NET 2.0 ha iniziato a scomparire in modo casuale. Non ci sono record nel registro eventi, Dr. Watson non genera crash dump, niente ...Come risolvere l'applicazione .NET che scompare?
Come risolvere questa domanda?
Una delle nostre applicazioni .NET 2.0 ha iniziato a scomparire in modo casuale. Non ci sono record nel registro eventi, Dr. Watson non genera crash dump, niente ...Come risolvere l'applicazione .NET che scompare?
Come risolvere questa domanda?
Altre possibilità:
1) Collegare un gestore eventi all'evento AppDomain.UnhandledException e registrare l'oggetto eccezione.
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
2) Collegare un gestore di eccezioni filo
Application.ThreadException +=
new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
per WPF e Silverlight app che utilizzi di più gestori di eccezioni, per esempio Application.DispatcherUnhandledException e Application.UnhandledException rispettivamente, ma questi non ti interessano in questo scenario. Li includo per completezza.
Viene gestito - nessun record di registro. – alex
Modificare il codice per includere i passaggi del registro dopo ogni sezione pertinente e quindi controllare il file di registro per vedere dove va.
caso contrario ancora di iniziare, allora ti dirò una cosa troppo ...
Si potrebbe provare a utilizzare Elmah, questo sarà il login quasi tutte le eccezioni non gestite:
http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx
Abbiamo avuto un problema simile. Abbiamo avuto un evento per AppDomain.UnhandledException ma è stato addirittura saltato. Si è rivelato essere un SystemAccessViolation causato durante il test del contenuto degli appunti.
Se è simile (se si ignora l'evento AppDomain.UnhandledException), suggerirei di registrare tutto intorno a interop e chiamate di dati "ostili" dall'esterno del processo e la revisione del codice è tutto. Ci sono volute diverse settimane per rintracciarlo e un cambio di riga per sistemarlo.
Inoltre, attivare MDA in VS ed eseguire il programma con esso e vedere se si verificano errori.
Effettuate chiamate p/invocate? –
Non direttamente. Utilizziamo Crystal Reports, che può effettuare tali chiamate. Ad ogni modo, l'applicazione ha funzionato per un anno senza problemi. – alex
Usi dei componenti COM? –