关于SendMessage出错的问题
我的程序中用到SendMessage从一个视图类(CPaintview)向另一个视图类(CLeftView)中发消息,在CLeftView中作出响应。大概是按一下步骤实现的:
1.CPaintView中用以下代码实现发送消息:
CMainFrame *pFrame=(CMainFrame*)(AfxGetApp()->GetMainWnd());
CLeftView *pView=(CLeftView*)pFrame->GetActiveView();
::SendMessage(pView->m_hWnd,WM_MY_01,0,0);
2.CLeftView中用以下代码实现相应:
.H文件中添加:
#define WM_MY_01 WM_USER+1
和
afx_msg void Analyze(WPARAM wParam, LPARAM lParam);
.CPP文件中添加:
ON_MESSAGE(WM_MY_02,Analyze);
和
void CLeftView::Analyze(WPARAM wParam, LPARAM lParam)
{
m_data_item=3;
…………
}
可以看到CLeftView已经做出响应,但是相应完毕之后,程序立刻报错“‘0x73d311c7’指令引用的‘0x00000004’内存。该内存不能为‘read’要终止程序~~~~~~”程序马上就关闭了。
哪位高手知道问题出在哪里的,请指教,如果问题说得不明比啊我再补充 谢谢~~~