отладка c ++ dll в VS2010 от python - PullRequest
1 голос
/ 03 марта 2012

У меня есть dll, встроенная в c ++, под VS2010, и я вызываю ее из проекта Python.

У меня была ошибка внутри dll, и мне хотелось бы иметь возможность отладки с помощью VS-инструментов, переходить к решению, пока я не достигну задачи «прочитать неверное местоположение в памяти».

Отладка / вход в функции не входил в код функции внутри dll.

Я попытался подключить отладчик (и запустить код python из командной строки / stop в raw_input, который дал мне pid, затем подключить отладчик). То же самое случилось Я ударил точки останова внутри кода Python, но ни один из внутри DLL.

В конце концов я обнаружил свою ошибку, после того, как сильно ударился головой о монитор, используя след в старом стиле внутри dll. Но должен быть способ отладить существующий / открытый проект внутри VS ... Я собираюсь снова столкнуться с этим, поэтому я надеюсь научиться чему-то сейчас и избежать повреждения моего монитора в будущем. :)

Примечание: DLL-файл c ++ и файл pdb находятся в том же каталоге, что и файл python, они, конечно, автоматически встраиваются в папку Debug, и они также находятся в папке, расположенной в системном пути. Любые возможные символы отладки включены. Я использую Python 2.7.

1 Ответ

1 голос
/ 03 марта 2012

Вам нужно иметь файл .pdb в каталоге bin, если вы хотите иметь возможность входить и отлаживать dll, иначе у вас не будет доступа ни к одному из символов отладки.Этот .pdb позволяет Visual Studio читать файл .dll и переходить к вызовам его методов.

...