Как поместить точку останова в конце функции в windbg, так, чтобы я не должен был редактировать его, даже если некоторые строки были добавлены/удалены в источнике?

Я должен регистрировать некоторые данные, когда некоторые функции поражены, и в начале выполнения и и конец их. В то время как у меня нет проблемы с помещением точек останова в начале функций (использование bu [module]!functionname, Я не знаю, как поместить точку останова в конце функции, ТАКОЙ, ЧТО я не должен редактировать точку останова каждый раз, я добавляю/удаляю somelines из файла/функции. Я уверен, что это - очень общий сценарий, просто что я не знаю как его сделанный!! Кто-либо может объяснить?

6
задан TCSGrad 2 April 2010 в 10:31
поделиться

2 ответа

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

bu [module]!functionname "bp /1 @$ra \".echo Exit functionname ; g\"; .echo Enter functionname; g"

Предостережение: это может не сработать, если в функции выброшено исключение.

7
ответ дан 10 December 2019 в 02:45
поделиться

Вот то, что вы точно ищете

Получите возвращаемые функции и информацию о профилировании в .NET с помощью Windbg

It объясняется, как установить точку останова при возврате функции

То же самое применимо и к машинному коду.

Надеюсь, это поможет.

2
ответ дан 10 December 2019 в 02:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: