Инструменты для стека вызовов запущенного процесса в Windows 7 - PullRequest
2 голосов
/ 22 августа 2010

Какой инструмент я могу использовать, чтобы увидеть стек вызовов для запущенного процесса?msdn ссылка , но нужно ли иметь исполняемый файл в режиме отладки?Каковы другие инструменты / способы, с помощью которых я могу увидеть граф вызовов / график доступа к ресурсам для запущенного процесса?У меня есть внешняя библиотека от разработчика для создания моих собственных алгоритмов машинного зрения, но внешняя библиотека находится в двоичной форме.Когда я использую библиотеку в своем коде, возникают сбои из-за способа доступа к изображениям.Я хочу увидеть граф вызовов или граф доступа к ресурсам.

1 Ответ

0 голосов
/ 22 августа 2010

Нужно ли иметь исполняемый файл в режим отладки?

Я не уверен, что именно вы подразумеваете под этим, но получение стека вызовов для процесса будет работать как для отладочных, так и для отладочных двоичных файлов. Обычно единственная реальная разница между отладкой и выпуском заключается в количестве включенной оптимизации и отладочной информации.

Каковы другие инструменты / способы, которыми я вижу колл-граф / ресурс График доступа для запущенного процесса?

Самый простой способ из Visual Studio - запустить вашу программу под отладчиком (просто нажмите F5), однако вы также можете присоединиться к запущенному процессу согласно инструкциям, содержащимся в вашей ссылке.

Если вы включаете разбивку при исключениях первого шанса 1 , вы можете перейти к окну стека вызовов при возникновении сбоя. Предполагая, что ваш код является собственным, вам понадобится файл PDB (.pdb, файл базы данных программы) для вашего кода и сторонняя библиотека, чтобы увидеть имена функций в стеке вызовов.

Вы также можете получить стек вызовов любого запущенного процесса, используя Process Explorer , но вам все равно понадобятся файлы PDB, чтобы увидеть символы.


  1. Собственные исключения см. В разделе «Отладка -> Исключения ...» и проверьте «Исключения C ++» и «Исключения Win32».
...