我和程序在Debug版本上没问题,在Release版本上的运行也正常,就是在关闭程序时报出一个0xC0000005的错误.经验反复查找,基本确定错误发生的地方:
class CTreeCtrlView : public CFormView
{
....
};
CTreeCtrlView *pTreeCtrlView;然后我在另一个类上发送一个自定义消息:
pTreeCtrlView->SendMessage(WM_USER_RECREAT, 0, 0);
消息的处理函数是CTreeCtrlView的一个成员函数.
我试过将这个函数注空,但那个错误同样发生.如果我注掉这个消息发送语句,就不会报错,请问大概错在哪?PS:发送消息是在程序运行过程中,不是在关掉程序时候发的.
class CTreeCtrlView : public CFormView
{
....
};
CTreeCtrlView *pTreeCtrlView;然后我在另一个类上发送一个自定义消息:
pTreeCtrlView->SendMessage(WM_USER_RECREAT, 0, 0);
消息的处理函数是CTreeCtrlView的一个成员函数.
我试过将这个函数注空,但那个错误同样发生.如果我注掉这个消息发送语句,就不会报错,请问大概错在哪?PS:发送消息是在程序运行过程中,不是在关掉程序时候发的.
以前我碰到了.DEBUG正确.RELEASE就错了.
很可能是这两个参数使用的有问题.
定义一个消息 #define WM_USER_RECREAT WM_USER+110
绑定一个消息处理函数 afx_msg LRESULT OnMyMsg(WPARAM wParam,LPARAM lParam);//头文件
ON_MESSAGE(WM_USER_RECREAT,OnMyMsg)//cpp 文件
然后 pTreeCtrlView->SendMessage(WM_USER_RECREAT, 0, 0);消息处理 LRESULT CxxxDlg::OnMyMsg(WPARAM wParam,LPARAM lParam)
{
..........
}
afx_msg LONG OnDelDlgMsg(WPARAM wP,LPARAM lP);
加上这参数就OK了.
谢谢,结帖!