使用WM_COPYDATA是个简单,可靠的办法用WM_COPYDATA的前提:1,知道接收消息进程的句柄。2,接收消息进程重载了WM_COPYDATA消息映射,能对其做出反应(否则不是发送端自作多情了?)看过前提,的出结论:在自己写的两个进程间用WM_COPYDATA再好不过。下面CODE几行就说明了一切。获得句柄的方法,最简单的方法就是使用FindWindow,找窗口类,或者名,如果你觉得这样不把握,那就利用SetProp个窗口做个记号....(不说这些,跑踢儿了都)发送端代码:HWND hWnd = FindWindow(NULL,"MyApp");if(hWnd!=NULL){      COPYDATASTRUCT cpd; /*给COPYDATASTRUCT结构赋值*/      cpd.dwData = 0;      cpd.cbData = strlen("字符串");      cpd.lpData = (void*)"字符串";      ::SendMessage(hWnd,WM_COPYDATA,NULL,(LPARAM)&cpd);//发送!
}接收端重载ON_WM_COPYDATA消息映射函数(下面是手工所要加的,你最好还是用ClassWizard)afx_msg BOOL OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct);ON_WM_COPYDATA()/*消息映射*/BOOL CMainFrame::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct) 
{
        AfxMessageBox((LPCSTR)(pCopyDataStruct->lpData));/*利用对话框表示收到消息*/        return CWnd::OnCopyData(pWnd, pCopyDataStruct);
}