Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как запустить другой процесс в режиме отладки?

Автор вопроса: Victor RodriguesОтветов: 3

Я пишу службу Windows. Эта служба запускает другой процесс, который я разработал с помощью методов класса Process, но я хочу также запустить этот процесс в режиме отладки, используя, например, точки останова.

Как я могу это сделать?

visual-studiodebuggingvisual-studio-2005

Ответы

Ответ 1 · рейтинг 4 · Ulf Lindback

При отладке службы DebugBreak() очень удобен. Вы даже можете отладить запуск службы, что может быть очень сложно определить по времени, если вы попытаетесь присоединить процесс.

In C#

#if DEBUG
  System.Diagnostics.Debugger.Break();
#endif

In C++

#if DEBUG
  System.Diagnostics.Debugger.Break();
#endif

Также см. вопрос: как я могу использовать debugbreak() в C#.

Ответ 2 · рейтинг 2 · Ali Ersöz

В главном меню "Отладка->Присоединить процесс".

Ответ 3 · рейтинг 1 · Jon Skeet

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

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы