Недопустимое исключение программы было обработано - PullRequest
0 голосов
/ 04 декабря 2010

Я получаю эту ошибку, и Common Language Runtime обнаружил недопустимую программу, когда я отлаживал свое приложение, используя F5. Если я использую CNTRL + F5, все работает нормально, почему это происходит, может сказать любой.

На самом деле, это возможно, только если я добавлю лицензию DeployLX, которая является лицензионным программным обеспечением от XHEO.

Ответы [ 2 ]

4 голосов
/ 04 декабря 2010

Поведение, которое вы испытываете, несомненно, является следствием того, что ваше приложение запускается с подключенным отладчиком. Когда вы запускаете свое приложение, используя Ctrl + F5 , вы говорите Visual Studio «Пускать без отладки», а не просто нажимаете F5 , что говорит Visual Studio «Начать отладку». Разница между этими двумя командами заключается в том, что первая не присоединяет отладчик к процессу вашего кода. Обратите внимание, что не - это то же самое, что разница между сборкой Debug и сборкой Release! Любой тип сборки может быть запущен с отладчиком или без него.

Запуск вашего приложения без подключенного отладчика означает несколько разных вещей:

  • Точки останова не будут достигнуты
  • Символы отладки (ваши файлы .PDB) не загружены, поэтому вы не можете пошагово выполнить код
  • Заявления, включающие класс System.Diagnostics.Debug, не будут выполняться
  • В C ++ переменные не будут инициализированы к значениям по умолчанию (а скорее оставлены как неинициализированные)

В вашем случае, я бы предположил, что исключение, которое вы видите, перехватывается и обрабатывается где-то выше стека от того места, где он генерируется (предположительно, из-за кода, предоставляемого лицензированием DeployLX, хотя я не Я ничего не знаю об этом и никогда не использовал это) и поэтому не отображается, если у вас нет отладчика При подключенном отладчике исключение регистрируется и отображается в информационных целях независимо от того, обрабатывается ли оно надлежащим образом.

Вы точно не объяснили , где отображается эта ошибка и как вы ее «получаете». Но если вы хотите настроить способ обработки исключений, когда отладчик подключен к процессу, выполняющему ваш код, откройте меню «Отладка» и нажмите «Исключения». После этого вы можете разбить все исключения, даже те, которые обрабатываются, если хотите увидеть, какой код вызывает исключение.

0 голосов
/ 04 декабря 2010

Согласно этому вопросу , Чистое решение может быть хорошей ставкой.

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