steven_kane
驱动牛犊
驱动牛犊
  • 注册日期2002-12-22
  • 最后登录2009-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1902回复:6

关于softice调试应用程序中,无法设置断点问题

楼主#
更多 发布于:2003-11-12 20:07
我自己随便编了一个弹出一个MessageBox的小程序,我想用softice在MessageBox函数上设一个断点,
bpx MessageBox
可softice去显示
Symbol not defined (MessageBox)这是怎么回事?
当我设置bpx MessageBoxA
时就可以,但是却无法拦截我自己的应用程序的 MessageBox
我是用Boot启动softice的,
请各位高手帮我看一下,我想可能是要在哪里做一个
小改动

wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2003-11-12 23:33
MessageBox函数在USER32。DLL里面,不过没有这个MessageBox函数,只有MessageBoxA和MessageBoxW,一般前者会调用后者,所以直接BPX MessageBoxW,即可。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
steven_kane
驱动牛犊
驱动牛犊
  • 注册日期2002-12-22
  • 最后登录2009-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-11-13 22:14
多谢大虾指点,我还是没成功
我的测试程序

#include \"stdafx.h\"

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
MessageBox(0,\"ok\",\"ok\",MB_OK);
return 0;
}
然后我用Symbol Loader 读取了mytest.exe ,
在softice中设置了断点 bpx MessageBoxW
和bpx MessageBoxA 然后运行mytest.exe ,
仍然没有产生任何中断,请大虾继续帮助我阿

wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
地板#
发布于:2003-11-14 14:22
先执行一个进程,确保该函数被影射入地址空间,然后下断点,2K与9X不同的是,DLL也是动态影射的。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
steven_kane
驱动牛犊
驱动牛犊
  • 注册日期2002-12-22
  • 最后登录2009-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-11-17 20:37
我写了一个mfc的对话框应用程序,在一个button的响应函数中


void CDialTestDlg::OnButton13()
{
  ::MessageBox(0,\"aaa\",\"bbb\",MB_OK);

}

我先loader 了这个程序 , 然后运行它
在调出softice
这时下断点 bpx MessageBox
这位大侠 , 我这样做对吗 ?
可我还是无法下断点,softice还是告诉我Symbol not define
我还是无法拦截MessageBox调用
steven_kane
驱动牛犊
驱动牛犊
  • 注册日期2002-12-22
  • 最后登录2009-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-11-17 20:38
真是邪门了! 这到底是怎么回事?
luowei74
驱动小牛
驱动小牛
  • 注册日期2003-07-21
  • 最后登录2007-04-16
  • 粉丝0
  • 关注0
  • 积分162分
  • 威望21点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-11-19 08:54
wowocock说的很清楚了,user里面没有MessageBox这个函数,只有MessageBoxA和MessageBoxW这2个函数。
你可以用exp MessageBox看一下
一般来说,你如果用ANSI模式编译程序,调用的是MessageBoxA
游客

返回顶部