2016-01-14 4 views
5

Можно ли одновременно отлаживать несколько проектов в Visual Studio? Я знаю, что вы можете выбрать несколько проектов запуска из свойств решений, но мне было интересно, как обрабатываются точки останова? Если два проекта используют один и тот же класс (два разных экземпляра), и я остановлен с точкой останова в нем, будет ли он блокировать только одну программу или и то, и другое? Как я могу узнать, какой исполняемый файл попадает в точку останова? Я немного смущен.Visual studio: отлаживать несколько проектов одновременно?

+2

Запустить несколько VS. – i486

+1

Нет, вы не можете, отладчик работает с одной сборкой за раз и останавливает выполнение при ударе точки останова. Несколько VS - это опция для вас как ** i486 **, упомянутая выше. – Shaharyar

+0

Отладка -> Присоединить к процессу –

ответ

12

Да, это возможно. Вы можете установить несколько проектов запуска в своем решении (щелкните правой кнопкой мыши по решению, выберите «Запуск проектов запуска», выберите «Несколько проектов запуска») и укажите действие для каждого проекта, содержащегося в решении («Нет», «Старт», «Пуск» без отладки). Если у вас есть несколько проектов, настроенных на «Пуск», отладчик будет прикрепляться к каждому из них при его запуске.

Когда вы нажмете точку останова, вы увидите, какой процесс вы используете на панели инструментов Debug Location (возможно, вам придется ее показать, некоторые профили скрывают это по умолчанию). Он покажет, на какой процесс вы сейчас находитесь, в каком потоке вы находитесь, и в какой фрейме вы находитесь: Debug Location toolbar

Я считаю, что поведение по умолчанию заключается в том, что когда один процесс прерывается, отладчик прерывается все они. Таким образом, вы можете проверить состояние любого присоединенного процесса, когда вы нажмете на одну точку останова.

0

Нет. Вы можете отлаживать exe и входить в отладочную версию связанной DLL, если вы будете осторожны, чтобы убедиться, что exe «видит» ту же DLL, что и отладчик, но вы не можете отлаживать два exes в то же время. По крайней мере, насколько мне известно.

+0

да, вы можете запустить свой (другой) .exe, затем «присоединить к процессу» из VS и выбрать его –

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