zoukankan      html  css  js  c++  java
  • WM_COPYDATA消息机制 不同进程间发送结构体数据



    发送端:

    void CTestExeDialogDlg::OnBUTTONsendMsg() 
    {
    	// TODO: Add your control notification handler code here
    	
    /*
    	CString str="single_vc6";
    	CWnd *pWnd=CWnd::FindWindow(NULL,str);
    	if(pWnd)
    	pWnd->SendMessage(WM_TESTSENDMSG_SINGLE,1,0);
    */
    	COPYDATASTRUCT cpd;
    
    //	Datebag data;
    	Datebag *p_data=(Datebag *)malloc(sizeof(Datebag));
    
    	p_data->a=1;
    	p_data->b=10;
    	strcpy(p_data->c,"message");
    
    
    	LRESULT copyDataResult;
    	CWnd *pOtherWnd = CWnd::FindWindow(NULL, "single_vc6");
    
    	cpd.dwData = 0;
    	cpd.cbData = sizeof(Datebag);
    	cpd.lpData =  p_data;
    	copyDataResult = pOtherWnd->SendMessage(WM_COPYDATA,0,(LPARAM)&cpd);
    
    	
    }

    注意:copydata是不能使用PostMessage的


    接受端:

    BOOL CMainFrame::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct) 
    {
    	// TODO: Add your message handler code here and/or call default
    		
    
    	Datebag *p_data;
    	p_data=(Datebag *)pCopyDataStruct->lpData;
    
    	if(p_data->a==1&&p_data->b==10)
    	{
    	
    		MessageBox(_T(p_data->c),NULL,MB_OK);
    
    	
    	}
    
    	return CFrameWnd::OnCopyData(pWnd, pCopyDataStruct);
    }
    


    结果:

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    JavaScript与C# Windows应用程序交互方法
    CREATE TABLE 表名 AS SELECT 语句
    从新开始
    window下安装redis
    最终,我们都变成了机器
    这个网址很学习
    改变你一生命运的话语 不得不信
    看《超级演说家》有感
    网页布局的一点感触
    最近状态不好
  • 原文地址:https://www.cnblogs.com/will1990/p/4951539.html
Copyright © 2011-2022 走看看