Visual Studio 2010 UnhandledException, обработка ошибок ThreadException? - PullRequest
0 голосов
/ 10 февраля 2011

В моем коде я обнаружил ошибку, которая была перехвачена следующими исключениями во время работы программы. Однако, когда я запускал программу в Visual Studio, когда происходила ошибка, приложение просто выходило без каких-либо ошибок (другие ошибки обычно приводят меня к проблемной строке).

if (ApplicationDeployment.IsNetworkDeployed) {
    AppDomain.CurrentDomain.UnhandledException += currentDomainUnhandledException;
    Application.ThreadException += applicationThreadException;
}

Конечно, если я удаляю if, я получаю обработку исключений моими методами, которая просто использует MessageBox, чтобы показать ошибку. Есть ли способ заставить Visual Studio перехватить эту ошибку, как будто она перехватывает другие типы ошибок?

1 Ответ

2 голосов
/ 10 февраля 2011

Только с помощью отладки + Исключения, Брошенный флажок. Это заставляет отладчик останавливаться на «первом шансе». На данный момент исключение выбрасывается. Как правило, вы хотите сделать это:

        if (!System.Diagnostics.Debugger.IsAttached) {
            // Subscribe the events
            //...
        }

Обратите внимание, что это уже работает для Application.ThreadException, Winforms уже избегает перехвата исключений, если видит отладчик. По той же причине.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...