继续困扰我的user breakpoint called from code at 0x7c92120e

kangshifu091 2010-08-25 08:52:35

大家帮我看看这是什么原因?
真的很困惑。
点完确定会出现这个。


往下跟发现是这里出的问题。


大家帮帮忙,指点一下,怎样能跟出出错的代码行?

声明一下:现在我没有跨线程使用CWnd对象。
...全文
873 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
Balana_yan 2011-11-07
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 hehening88 的回复:]
我也遇到这个问题
[/Quote]

我也遇到了这个问题,可是还是没有解决
hehening88 2011-10-04
  • 打赏
  • 举报
回复
我也遇到这个问题
biepiaozhe 2011-08-30
  • 打赏
  • 举报
回复
也遇到这样的问题,求解
wyx100 2011-06-13
  • 打赏
  • 举报
回复
遇到同样问题,关注
kangshifu091 2010-10-06
  • 打赏
  • 举报
回复
您能说的具体一点吗?
怎么看呢?
我到底具体下一步应该做什么?
谢谢:)
lazy_2010 2010-09-25
  • 打赏
  • 举报
回复
属性表单 是 PropertySheet 么?看看你的窗口是否已经无效了?
kangshifu091 2010-09-25
  • 打赏
  • 举报
回复
我已经按照lazy_2010说的方法找到了那个窗口。
是我创建的一个属性表单。
请问我下一步应该怎么做?
wanglaoji007 2010-09-25
  • 打赏
  • 举报
回复
我也遇到了这样的问题
kangshifu091 2010-09-15
  • 打赏
  • 举报
回复
今天这个问题终于又一次的出现了。
我正在用lazy_2010提供的方法来解决这个问题。
感谢大家的热心帮助。
kangshifu091 2010-09-08
  • 打赏
  • 举报
回复
我说的很多是指每个类中都有,并且里面的东西都挺多的。我为了是显示一些东西。
kangshifu091 2010-09-08
  • 打赏
  • 举报
回复
没有用什么控件呀,我用的是消息映射。
用了很多OnTimer
lazy_2010 2010-09-02
  • 打赏
  • 举报
回复


AfxAssertFailedLine(const char * 0x5f4d0cf0 THIS_FILE, int 313) line 39 + 20 bytes
CWnd::FromHandlePermanent(HWND__ * 0x00050716) line 313 + 32 bytes
CWnd::WalkPreTranslateTree(HWND__ * 0x00120144, tagMSG * 0x0044f090 {msg=0x00000113 wp=0x00000001 lp=0x00000000}) line 2674 + 9 bytes
CWinThread::PreTranslateMessage(tagMSG * 0x0044f090 {msg=0x00000113 wp=0x00000001 lp=0x00000000}) line 672 + 18 bytes

来看,是 HWND 为 0x00050716 的窗口找不到对应的 CWnd 永久对象了,看看这是个什么窗口、控件,带 WM_TIMER 消息的,是 edit 控件吗?
kangshifu091 2010-09-02
  • 打赏
  • 举报
回复

看看这个图,大概能找出原因。
lazy_2010说的方法具体怎么操作呢。怎样看是哪个窗口出的问题。
kangshifu091 2010-09-02
  • 打赏
  • 举报
回复
NTDLL! 7c92120e()
_CrtDbgReport(int 2, const char * 0x5f4d0cf0 THIS_FILE, int 313, const char * 0x00000000, const char * 0x00000000) line 353
AfxAssertFailedLine(const char * 0x5f4d0cf0 THIS_FILE, int 313) line 39 + 20 bytes
CWnd::FromHandlePermanent(HWND__ * 0x00050716) line 313 + 32 bytes
AfxWndProc(HWND__ * 0x00050716, unsigned int 275, unsigned int 1, long 0) line 373 + 9 bytes
AfxWndProcBase(HWND__ * 0x00050716, unsigned int 275, unsigned int 1, long 0) line 220 + 21 bytes
USER32! 77d18734()
USER32! 77d18816()
USER32! 77d189cd()
USER32! 77d18a10()
USER32! 77d27721()
USER32! 77d249c4()
USER32! 77d3a956()
USER32! 77d3a2bc()
USER32! 77d663fd()
USER32! 77d664a2()
USER32! 77d50877()
USER32! 77d5082f()
__crtMessageBoxA(const char * 0x001238c8, const char * 0x102579a0 `string', unsigned int 73746) line 65
CrtMessageWindow(int 2, const char * 0x5f4d0cf0 THIS_FILE, const char * 0x001249fc, const char * 0x00000000, const char * 0x00126a20) line 520 + 22 bytes
_CrtDbgReport(int 2, const char * 0x5f4d0cf0 THIS_FILE, int 313, const char * 0x00000000, const char * 0x00000000) line 419 + 76 bytes
AfxAssertFailedLine(const char * 0x5f4d0cf0 THIS_FILE, int 313) line 39 + 20 bytes
CWnd::FromHandlePermanent(HWND__ * 0x00050716) line 313 + 32 bytes
CWnd::WalkPreTranslateTree(HWND__ * 0x00120144, tagMSG * 0x0044f090 {msg=0x00000113 wp=0x00000001 lp=0x00000000}) line 2674 + 9 bytes
CWinThread::PreTranslateMessage(tagMSG * 0x0044f090 {msg=0x00000113 wp=0x00000001 lp=0x00000000}) line 672 + 18 bytes
CWinThread::PumpMessage() line 848 + 30 bytes
CWnd::RunModalLoop(unsigned long 4) line 3489 + 19 bytes
CDialog::DoModal() line 539 + 12 bytes
CtoolbbApp::InitInstance() line 82 + 11 bytes
AfxWinMain(HINSTANCE__ * 0x00400000, HINSTANCE__ * 0x00000000, char * 0x001423aa, int 1) line 39 + 11 bytes
WinMain(HINSTANCE__ * 0x00400000, HINSTANCE__ * 0x00000000, char * 0x001423aa, int 1) line 30
WinMainCRTStartup() line 330 + 54 bytes
KERNEL32! 7c817077()

等了好几天终于又出现这个问题了,这次我复制全了,请各位高手帮忙看看吧。
CloudmmFly 2010-08-27
  • 打赏
  • 举报
回复
看起来好像是MFC中客户区窗口问题,有用到第三方库么?还是自己写的?
可能是和窗口相关的函数对窗口操作时发生了问题,检查一下和窗口操作相关的函数
lazy_2010 2010-08-27
  • 打赏
  • 举报
回复
想办法输出创建的窗口的 HWND,然后在出现问题的时候看看是哪个窗口,再考虑这个窗口或者它的父窗口是否对应的 CWnd 对象的函数处理存在问题吧。
arong1234 2010-08-26
  • 打赏
  • 举报
回复
你程序里有SetTimer(1 ....)之类得代码么?如果有,对应得消息处理函数是怎样得?
kangshifu091 2010-08-26
  • 打赏
  • 举报
回复
回复4楼
USER32 ! xxxxx()之上都是USER32 ! xxxxx()这个
没有我写的函数。


回复5楼
能说说我通过怎样的操作能找到问题的所在吗?用什么方法?

谢谢各位。
lazy_2010 2010-08-26
  • 打赏
  • 举报
回复
应该是你的 WM_TIMER 消息处理的时候,发现错误了,即

AfxWndProc(, 275, ); 的代码,那里比较重要,下面分析看看是什么错误信息。

275 = 0x0113,即 WM_TIMER。

从 AfxWndProc 的代码来看,有两个 ASSERT


CWnd* pWnd = CWnd::FromHandlePermanent(hWnd);
ASSERT(pWnd != NULL);
ASSERT(pWnd->m_hWnd == hWnd);


估计是你的 window (HWND)已经无效了?
arong1234 2010-08-25
  • 打赏
  • 举报
回复
重要的信息不是你截图给出的部分, 而是再一堆USER32 ! xxxxx()之上的函数调用,也就是说,我们需要知道,到底哪个你自己的函数调用最终触发了这个问题
加载更多回复(3)

64,282

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧