Witam Mam ten projekt, w którym występują pewne problemy z tym, co ma być moim kodem dla obsługi "problemu".Obsługa wyjątków globalnych w VB
Public Event UnhandledException As UnhandledExceptionEventHandler
Private Sub form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim currentDomain As AppDomain = AppDomain.CurrentDomain
AddHandler currentDomain.UnhandledException, AddressOf MyHandler
End Sub
Sub MyHandler(ByVal sender As Object, ByVal args As UnhandledExceptionEventArgs)
Dim e As Exception = DirectCast(args.ExceptionObject, Exception)
Using sw As New StreamWriter(File.Open(myFilePath, FileMode.Append))
sw.WriteLine(Date.now & e.toString)
End Using
MessageBox.Show("An unexcpected error occured. Application will be terminated.")
Application.Exit()
End Sub
Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
Throw New Exception("Dummy Error")
End Sub
Próbuję globalnie złapać wszystkie wyjątki i utworzyć plik dziennika podczas wykonywania, który działa dobrze w debugger (obsługa wyjątków i pisanie plik.txt), ale nie może złapać wszystkie nieobsługiwane wyjątki po tym, jak go zbudować w projekcie instalacji i Zainstalowany w maszynie. czego mi brakuje? Czy muszę dołączyć dodatkowe komponenty do mojego projektu instalacji? Pomoc byłaby bardzo ceniona
Czy obsługa przebiega w ogóle - tj. jeśli przeniesiesz 'MessageBox' jako pierwszą linię w obsadzie, czy widzisz to? Możliwe, że otrzymujesz błąd w programie obsługi (na przykład wokół rejestrowania?) – theduck
Próbowałem przenieść MessageBox do pierwszej linii programu obsługi i tak, to pokazuje. Próbowałem umieścić punkt przerwania na początku programu obsługi i wkroczyłem i przepłynąłem bezpośrednio przez program obsługi. – Adrian
Czy uprawnienia do pliku dziennika są prawidłowe dla użytkownika, który uruchamia aplikację? – theduck