Deseo enviar texto entre procesos. He encontrado muchos ejemplos de esto, pero ninguno con el que pueda trabajar. Aquí es lo que tengo hasta ahora:Utilice WM_COPYDATA para enviar datos entre procesos
para la parte que envía:
COPYDATASTRUCT CDS;
CDS.dwData = 1;
CDS.cbData = 8;
CDS.lpData = NULL;
SendMessage(hwnd, WM_COPYDATA , (WPARAM)hwnd, (LPARAM) (LPVOID) &CDS);
la parte receptora:
case WM_COPYDATA:
COPYDATASTRUCT* cds = (COPYDATASTRUCT*) lParam;
No sé cómo construir el COPYDATASTRUCT, acabo de poner algo en eso parece funcionar Al depurar, se ejecuta el caso WM_COPYDATA, pero nuevamente no sé qué hacer con el COPYDATASTRUCT.
Me gustaría enviar mensajes de texto entre los dos procesos.
Como probablemente sepa, recién estoy comenzando, estoy usando el compilador GNU GCC en Code :: Blocks, estoy tratando de evitar el MFC y las dependencias.
Sé que el segundo enlace (a flounder.com) usa MFC, que no está usando, pero lo incluí simplemente para ilustrar que debería considerar pasar más que una simple cadena. – Tadmas
Gracias, lo tengo funcionando.A pesar de que tenía que cambiar la primera línea de LPTSTR lpszString porque tengo este error: la conversión no válida del 'const void * 'a' void *' –
Este enlace es muy útil: http: //code.msdn. microsoft.com/windowsdesktop/CppSendWMCOPYDATA-f75bc681/ – pcunite