008
19.10.2004, 09:05 Uhr
~Wahnsinnig
Gast
|
Morgen Spacelord,
ich habe mich mal deinem Vorschlag mit WM_COPYDATA zugewand, leider klappt es nicht so richtig. Kenn mich mit SendMessage und so auch leider nicht so aus, evtl. kannst du mir da ja einen Tip geben.
C++: |
void CklasseDlg1::OnStart() { CString strWindowTitel = _T("Dialog");//Name des anderen Fensters CString strDataToSend = _T("Hallo");
CWnd *pOtherWnd = CWnd::FindWindow(NULL, strWindowTitel ); COPYDATASTRUCT cpd; cpd.dwData = 0; cpd.cbData = strDataToSend.GetLength(); cpd.lpData = (void*)strDataToSend.GetBuffer(cpd.cbData); pOtherWnd->SendMessage(WM_COPYDATA, (WPARAM)AfxGetApp()->m_pMainWnd->GetSafeHwnd(), (LPARAM)&cpd); strDataToSend.ReleaseBuffer(); }
BOOL CklasseDlg2::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct) { CString strReceivedText = (LPCSTR)(pCopyDataStruct->lpData); return CMainDlgII::OnCopyData(pWnd, pCopyDataStruct); }
|
Diesen Code habe ich aus dem Netz und versuche Ihn ans Laufen zu bekommen. Es funktioniert auch ohne Fehler, bekomme aber auch keinen Aufruf. So richtig verstehe ich die Sache auch nicht nach dem SendMessage ... Kannst du mir da helfen die Übersicht zu bekommen?
Danke |