【发布时间】:2016-01-25 06:15:26
【问题描述】:
现在我使用 WinDBG 调试程序。这个程序调用'operator new'函数。
使用符号,这个函数调用可以通过符号名访问,“MSVCR90!operator new”。
但是这个函数名有空格('')并且被两种类型重载。 MSVCR90!operator new (unsigned int) & MSVCR90!operator new *(unsigned int, int, char , int)
因此,我不能轻易地在这个函数上设置断点。我输入了以下方法,但我输入的所有内容都失败了。
0:008> bp @!"MSVCR90!operator new"
Matched: 74b00939 MSVCR90!operator new (unsigned int, int, char *, int)
Matched: 74af3e99 MSVCR90!operator new (unsigned int)
Ambiguous symbol error at '@!"MSVCR90!operator new"'
^ Extra character error in 'bp @!"MSVCR90!operator new"'
0:008> bp @!"MSVCR90!operator new (unsigned int)"
Couldn't resolve error at '@!"MSVCR90!operator new (unsigned int)"'
^ Extra character error in 'bp @!"MSVCR90!operator new (unsigned int)"'
我终于在'operator new'处设置了断点,但我使用了偏移量。
还有'MSVCR90!operator new (unsigned int)'吗?
【问题讨论】: