Отладка с помощью магии «Присоединение к процессу» в Visual Studio 2010 / Xcode / gdb - PullRequest
0 голосов
/ 18 января 2011

Я вижу, что с помощью «Присоединения к процессу» можно отлаживать процесс, устанавливая точку останова в Visual Studio IDE.

Я думаю, это довольно круто, и мне любопытно, какой механизм это позволяет. Я также обнаружил, что GDB и Mac Xcode поддерживают эту технологию.

  • Q1: Кто-нибудь может объяснить, как это работает? Как процесс может быть сопоставлен с точкой останова в среде IDE или GDB?
  • Q2: Существуют ли другие параметры компилятора / отладчика, кроме / Zi или -g (добавление информации отладки)?
  • В3: Это способ отладки dll (динамическая библиотека)?

ДОБАВЛЕНО

Я нашел это с MSDN - http://msdn.microsoft.com/en-us/library/c6wf8e4z.aspx

Ответы [ 2 ]

2 голосов
/ 18 января 2011

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

То же самое верно и для других приложений, которые вызывают код, который вы выполняете в Visual Studio.Когда вы пересекаете границу с кодом, отладчик ловит вызов и запускает код в VS.

0 голосов
/ 15 октября 2013

Я использую его довольно часто при разработке плагинов для существующих приложений (Maya, Reaper и т. Д.).Как правило, плагины не могут быть запущены независимо, поэтому для их отладки мне нужно запустить хост-программу и использовать «Присоединить к процессу» для запуска отладчика на моем плагине, после чего я могу установить точки останова и всеэто другое отладочное совершенство.У вас должны быть отладочные символы и все те же для плагина, но вам не нужно иметь их для хост-приложения.

...