Ho sviluppato un progetto che utilizza una DLL esterna come FTPServer, ho creato il server FTP sul mio progetto come questo:Come posso gestire l'eccezione che gira su una dll esterna?
private ClsFTPServer _ClsFTPServer;
_ClsFTPServer = new ClsFTPServer(FTPUserName, FTPPassword, FTPPath);
Il codice precedente crea un'istanza della classe server FTP, inizia la classe il server FTP sul suo costruttore, funziona in modo indipendente come un modulo mentre i client inviano la loro richiesta correttamente, ma quando arriva una richiesta errata al server FTP genera un'eccezione e causa l'arresto anomalo dell'applicazione.
Come posso gestire l'eccezione generata dalla DLL esterna per impedire l'arresto anomalo dell'applicazione?
la DLL esterna non dovrebbe realmente essere gettando eccezioni da thread diversi dal thread chiamante, avete la possibilità di modificare la codice dll? Un modo migliore per gestire gli errori sarebbe che la dll attivi un evento quando si verifica un errore e iscriversi a quell'evento nel tuo programma principale (che sta consumando la dll) – RobJohnson
tenta di rilevare appDomain/threading exceptions nell'applicazione- http: // msdn.microsoft.com/en-GB/library/system.appdomain.unhandledexception.aspx (risposta aggiunta con collegamento a maggiori informazioni) – NDJ
Un server FTP deve sempre gestire le violazioni del protocollo stesso senza crash. Buttalo via e cercane un altro. –