2010-12-04 3 views
0

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

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

+0

Пожалуйста, разместите свой код, в противном случае будет сложно сказать что-нибудь об этом ... – nico 2010-12-04 08:28:46

+0

Ничего не оставалось, чтобы опубликовать мой код, я просто создаю пустое решение – Dotnet 2010-12-04 09:06:36

+0

Вы работаете на x64 Windows? – Tom 2010-12-04 09:37:44

ответ

4

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

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

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

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

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

Смежные вопросы