Отладка в мульти-проекте под одним решением в версии 2010 - PullRequest
1 голос
/ 22 сентября 2010

У меня есть несколько проектов в одном решении. Проект A (начальный проект) запускает проект B, используя Process.Start.

Все методы отладки работают нормально в проекте A, однако после запуска A B не работают не только точки останова, но и вывод вызовов от System.Diagnostics.Debug.WriteLine.

Кто-нибудь знает, как отлаживать в этой ситуации?

Ответы [ 4 ]

2 голосов
/ 22 сентября 2010

В этом сценарии у вас запущено 2 процесса, и вам нужно подключить Visual Studio к ним обоим. Visual Studio поддерживает присоединение к нескольким процессам, и заставить его это делать так же, как присоединение к одному процессу. После запуска второго процесса сделайте следующее

  • Инструменты -> Присоединить к процессу
  • Выберите процесс
  • Hit Attach
1 голос
/ 22 сентября 2010

Вы отлаживаете процесс, в котором работает проект A, и, поскольку вы запускаете второй процесс для проекта B, вы не подключили отладчик к этому процессу.Так что вам нужно присоединиться ко второму процессу.

1 голос
/ 22 сентября 2010

Новый процесс, созданный во время выполнения, не будет иметь подключенного отладчика, следовательно, точки останова и debug.writeline не будут работать.

Вы можете выбрать меню «Отладка», а затем «Присоединить к процессу» в Visual Studio после запуска нового процесса.

0 голосов
/ 22 сентября 2010

Вы можете добавить вызов к System.Diagnostics.Debugger.Launch(); в главном из проекта B. Поэтому каждый раз, когда вы запускаете проект B, он спросит вас, хотите ли вы присоединить отладчик.

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