Sending messages between a Qt application and an MFC application
-
Hi,
I have two applications one is MFC(and I only have the executable ,but know that it is sending messages when some buttons are pushed) and the other is done using Qt.The one in MFC using something like this to send messages:
@CString strDataToSend = _T( "Hello" );
HWND hWndReceived;
COPYDATASTRUCT cpd;
cpd.dwData = 0;
cpd.cbData = strDataToSend.GetLength();
cpd.lpData = (void*)strDataToSend.GetBuffer(cpd.cbData);
SendMessage( hWndReceived, WM_COPYDATA, 0, (LPARAM) & cpd );
strDataToSend.ReleaseBuffer();@
I need to receive those messages in my Qt application and take some appropriate actions.
Is there a way Qt makes this easy to implement?
Thanks. -
What are you trying to do? If you want to communicate between applications you might need to look at some IPC(Inter process communication) methods. try this link "http://qt-project.org/doc/qt-5.0/qtdoc/ipc.html":http://qt-project.org/doc/qt-5.0/qtdoc/ipc.html
-
HWND hWndReceived must be a valid handle of an existing window object
try to find the qt window with "FindWindow":http://msdn.microsoft.com/en-us/library/windows/desktop/ms633499(v=vs.85).aspx ... you can use Spy++ to look at window class name to be found
anyway if you have access to the code of both apps you should consider other way for IPC