В настоящее время я поддерживаю приложение WinForms, которое слушает событие Application.threadexception
для ловушки необработанных исключений на потоках GUI.
Теперь все работают, как ожидалось до недавнего времени. Но в последнее время это событие больше не повышается надлежащим образом на некоторых добычи; Приложение пропускает обработчик и просто аварийрует, когда на бите гиби не хватает исключения. Как ни странно, я могу воспроизвести это на моем (новом) Dev Box, но есть некоторые машины, на которые событие на самом деле поднимается правильно.
Я могу сделать поведение в соответствии с явно установленной такой политикой:
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
, но мне интересно узнать, что контролирует политику по умолчанию. MSDN делает расплывчатые агрегаты на «файл конфигурации приложения», но в нашем App.config не существует такого настройки политики или любого другого файла конфигурации.
Что вызывает это непоследовательное поведение?