Visual Studio 2010 не останавливается на точке останова при отладке методов класса C # COMVisible - PullRequest
4 голосов
/ 28 января 2011

Я работаю над компонентом C # COM.Этот компонент вызывается из плагина приложения, и когда я вручную присоединяю отладчик к приложению, он останавливается на точках останова.Но когда я использую команду отладки Visual Studio (клавиша F5) и указываю «Запускать внешнюю программу» в настройках отладчика проекта, Visual Studio не останавливается на точках останова.

Короче говоря: * установить точку останова, скомпилировать, запустить приложение,присоединить отладчик к отладке «Управляемый (v2.0, v1.1, v1.0) код», метод плагина exec - VS останавливается на точке останова.* установить точку останова, указать запуск внешней программы, нажать F5 - запуск приложения, метод exec plugin - VS пропускает точку останова.Команда «Присоединить к ...» показывает ProteusDebugEngine вместо какого-либо управляемого кода.

1 Ответ

3 голосов
/ 28 января 2011

Проблема в том, что отладчик не может определить, какой из двух его механизмов использовать, потому что запускаемое приложение не является управляемым. Так что по умолчанию это двигатель 4.0. Вы должны сообщить отладчику, что вам нужен другой движок, явно указав ему, какое время выполнения используется.

Создайте или отредактируйте файл конфигурации для приложения, которое вы хотите отлаживать, и добавьте в него элемент SupportedRuntime.

<?xml version ="1.0"?>
 <configuration>
  <startup>        
    <supportedRuntime version="v2.0.[version on your machine]" />
  </startup>
</configuration> 

См. Запись в блоге MSDN .

...