Ho modificato il codice usando dei moduli ed ora funziona nel senso cheallo scatenarsi dell'errore viene esguita la mia routine. Ma non riesco a capire a cosa serva questa istruzione
codice:
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException)
visto che funziona sia se c'è e sia se non c'è.
Ecco il codice modificato. Qualsiasi suggerimento è ben accetto
codice:
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Throw New Exception("pippo")
End Sub
End Class
Module ModProgramma
Public Sub main()
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException)
AddHandler Application.ThreadException, AddressOf ModGestErrori.GestoreEccezioni
Application.Run(Form1)
End Sub
End Module
Module ModGestErrori
Public Sub GestoreEccezioni(ByVal sender As Object, ByVal e As Threading.ThreadExceptionEventArgs)
MsgBox("errore!!!")
' qui poi implementrò una scrittuta di un log degli errori per eviyare di dover chiedere all'utente
' di spiegarmi che errore ha avuto, quando, ecc ecc
End Sub
End Module
update: sto impazzendo. ora di nuovo non funziona. Nel senso che l'IDE mi intercetta l'errore . poi premendo continua va finalmente nella routine GestoreEccezioni. Perchè?