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缓冲的问题,这个原因就不知道了。