读书人

CFrameWnd退出是时的有关问题。(高分)

发布时间: 2012-01-15 22:57:49 作者: rapoo

CFrameWnd退出是时的问题。。(高分)
程序中用的是两个CFrameWnd(主、副),用主CFrameWnd调用副CFrameWnd。当副CFrameWnd退出后,经常会在(wincore.cpp) LRESULT CALLBACK _AfxActivationWndProc(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam)

这个函数中

lResult = CallWindowProc(oldWndProc, hWnd, nMsg, wParam, lParam);这个语句出现错误,提示oldWndProc是一个非法地址,这是什么原因。。

[解决办法]
这个库不怎么熟,不过Socket Notification Sink这个名字,似乎是WSock内部或是哪个库用来把socket收到的数据转成窗口消息的东东。你可以看看这个窗口过程的地址,是在哪个dll里面,或者是在出错前先看看模块列表里面的每个dll对应的地址区间,再看看这个窗口过程的地址在哪一段里面。
[解决办法]
Socket Notification Sink标题名的窗体中是提示错误信息的,这个错误信息我在内存访问出错的时候遇到过,从网上查找有说是Socket缓冲的问题,这个原因就不知道了。

读书人网 >VC/MFC

热点推荐