本帖最后由 VisualEleven 于 2012-11-09 11:19:24 编辑

解决方案 »

  1.   

    SendMessage(HWND, MSG_XXX, 0, (LPARAM)(LPCTSTR)str1);
      

  2.   

    SendMessage(HWND, MSG_XXX, 0, (LPARAM)(LPCTSTR)str1); 
    自定义一个消息 专门接受发送过来的路径LRESULT CXXXXDialog::OnProc(WPARAM wParam,LPARAM lParam)
    {
      char* pstr1=(char*)lParam;  return 0;
    }
      

  3.   

    谢谢了,我现在用的是菜单响应函数,而且得把这个文件路径给OCX控件读取文件。
    能说祥细一点吗,
    没有用过
    是不是得用到两个sendmessage了,一个用来确发菜单响应函数,一个来传送发送过来的路径?
      

  4.   

    我是这样定义的,还没有反映#define MSG_NEW_MENU 40010::SendMessage(AfxGetMainWnd()->GetSafeHwnd(), MSG_NEW_MENU, 0,(LPARAM)(LPCTSTR)str1);在.h文件下:afx_msg LRESULT OnProc(WPARAM wParam,LPARAM lParam);
    在.cpp文件下:
    LRESULT CLView::OnProc(WPARAM wParam,LPARAM lParam)
    {
     // char* pstr1=(char*)lParam;
      MessageBox(* pstr1);  return 0;
    }
      

  5.   

    消息映射 别漏
    ON_MESSAGE(MSG_XXX,OnProc)LRESULT CXXXXDialog::OnProc(WPARAM wParam,LPARAM lParam)
    {
      char* pstr1=(char*)lParam;  return 0;
    }
      

  6.   

    加了进去了,试了一下,还是没有响应,是不是
    SendMessage(AfxGetMainWnd()->GetSafeHwnd(), MSG_NEW_MENU, 0,(LPARAM)(LPCTSTR)str1);
    中的AfxGetMainWnd()->GetSafeHwnd(),用的不对,用了HWND报错!
      

  7.   

    你的确认一下接收的窗口是不是 MAINWNDSPY 拖一下 看看消息发到那个窗口了
      

  8.   

    我不是指的代码  我指的是收到消息的句柄 是不是你要发送到的句柄AfxGetMainWnd() 主句柄未必是 你发送到的目标  调试一下 或者 SPY跟踪一下消息
      

  9.   

    我是自己定制了一个函数:
    LRESULT CXXXXDialog::OnProc(WPARAM wParam,LPARAM lParam)
    {
      char* pstr1=(char*)lParam;  return 0;
    }
    要发到这个函数,刚才跟踪了一个下午也没发现,学习了下SPY++我到底要发到那个目标呢?求指点!
      

  10.   

    ::SendMessage(m_hWnd,UM_MSG,(WPARAM)buf,NULL); 这是我在线程外发送的设置,可以用,不知道在线程里要怎么设置才行,用SPY++跟踪也没有成功,高手给点建议吧,多谢!!!!!!!!!
      

  11.   

    AfxGetMainWnd()->GetSafeHwnd()可能是没有值的。启动线程的时候把主窗体的指针传入然后获得其句柄。
      

  12.   

    ::SendMessage(m_hWnd,UM_MSG,(WPARAM)buf,NULL); 这是我在线程外发送的设置,可以用,不知道在线程里要怎么设置才行,用SPY++跟踪也没有成功,高手给点建议吧,多谢!!!!!!!!!
      

  13.   

    谢谢了!
    ::SendMessage(AfxGetMainWnd()->GetSafeHwnd(), WM_COMMAND, MAKEWPARAM(ID_AUT, 0), NULL);我以前用这条发送信号可以在菜单在响应,
    现在想得到发送过来的具体变量值,就是没有响应,不知道问题在那里,困惑了!!
      

  14.   

    ::SendMessage(AfxGetMainWnd()->GetSafeHwnd(), WM_COMMAND, MAKEWPARAM(ID_AUT, 0),  NULL);我现在想在这句里添加文件路径变量,应该怎么改?高手再给点建议吧,多谢!!!!!!!!!