我在做activex时有两个类,一个就是class CClientCtrl : public COleControl,另一个是CClientSocket类,我想在CClientSocket里receive函数里向CClientCtrl里的的消息循环DefWindowProc发个消息,我用了如下的方法:
m_pParentWnd->PostMessage(WM_RECVORDER,(WPARAM)(0),(LPARAM)(0));
可是好像收不到我的消息,m_pParentWnd是在CClientCtrl里:
m_ClientSocket.m_pParentWnd = this;这样写好像收不到我的消息,有没有人解释一下,或者提供一个解决方案,我就是想在CClientSocket类里激发CClientCtrl类里的一个函数啊!

解决方案 »

  1.   

    我也知道activex中没有窗口,不知道怎么样实现这个功能呵
      

  2.   

    请问可不可以用PostMessage()传递消息给activex控件?参数应该怎样设? PostMessage()的第一个参数hwnd是接收消息的那个窗口的句柄 但我的activex控件有窗口吗, 如果我直接先定义一个窗口句柄: HWNDm_myHnd 让他作为第一个参数,那么这消息传到哪里去了?
      

  3.   

    解决了,其实只要在ctrl类的构造函数加入RecreateControlWindow();就行了