Здравствуйте, x-code, Вы писали:
XC> и я хочу сразу встать на точку останова в main() порожденного процесса? XC> В общем, у кого есть опыт такой отладки — делитесь.
воткнуть int 03. студия и всплывет. "рукотворные" точки останова ИМХО намного удобнее. во первых, они работают с любым отладчиком. во воторых, можно создавать сеты и быстро переключаться между ними. а гибкость условных точек останова не идет ни в какое сравнение с тем, что предлагают отладчики.
очень помогает для отладки вспомогательных процессов, которые стартуют и завершаются 100500 раз, да еще в нескольких экземплярах.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Задумался вот над чем.
А какие средства отладки нескольких взаимодействующих процессов имеются в современных IDE, в первую очередь в Visual Studio?
Понятно, что если это несколько независимых процессов, то можно запустить две и более студии. Но это самый простой случай (хотя сам по себе запуск N студий — ИМХО не лучшее решение).
Можно ли из одной студии запустить на отладку сразу два и более проекта? (сейчас проверил на 2008 — нельзя, но может в более новых версиях можно, или запускать нужно как-то по-особому?)
Как быть, если один проект запускает другой (через CreateProcess, ShellExecute или еще как-то), и я хочу сразу встать на точку останова в main() порожденного процесса?
В общем, у кого есть опыт такой отладки — делитесь.
Re[2]: Отладка нескльких взаимодействующих процессов
Здравствуйте, мыщъх, Вы писали:
М>воткнуть int 03. студия и всплывет. "рукотворные" точки останова ИМХО намного удобнее. во первых, они работают с любым отладчиком. во воторых, можно создавать сеты и быстро переключаться между ними. а гибкость условных точек останова не идет ни в какое сравнение с тем, что предлагают отладчики.
М>очень помогает для отладки вспомогательных процессов, которые стартуют и завершаются 100500 раз, да еще в нескольких экземплярах.
Кстати да, хороший старый добрый способ
По крайней мере с помощью этого способа можно вызвать студию при вызове вспомогательного процесса, создаваемого другим процессом, а дальше уже расставлять точки в студии.
Здравствуйте, x-code, Вы писали:
XC>Можно ли из одной студии запустить на отладку сразу два и более проекта? (сейчас проверил на 2008 — нельзя, но может в более новых версиях можно, или запускать нужно как-то по-особому?)
Было испокон веков:
Menu -> Project -> Set StartUp Projects... -> Multiple startup projects: -> Выбрать для нужных проектов Action.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, x-code, Вы писали:
XC>сейчас проверил на 2008 — нельзя, но может в более новых версиях можно, или запускать нужно как-то по-особому?)
В обозревателе решения -> правой кнопкой по проекту -> отладка -> запустить новый экземпляр. Хоть по нескольку экземпляров каждого проекта.
Или меню отладка -> подключиться к процессу.