7.12 Mit unbehandelten Exceptions in WinForms-Anwendungen umgehen

Problem

Sie haben eine WinForms-basierte Anwendung, bei der Sie alle unbehandelten Exceptions aus allen Threads abfangen und protokollieren wollen.

Lösung

Sie müssen Handler für die beiden Events System.Windows.Forms.Application.ThreadException und System.AppDomain.UnhandledException einrichten. Beide Events müssen abgefangen werden, da die WinForms-Unterstützung des Framework selbst eine Menge Exceptions abfängt. Sie setzt ein System.Windows.Forms.Application.ThreadException-Event ab, damit Sie die unbehandelten Exceptions erhalten, die in dem UI-Thread auftreten, in dem die WinForms-Objekte und ihre Events laufen. Trotz des täuschenden Namens fängt der System.Windows.Forms.Application.ThreadException ...

Get C# Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.