Chcę wysłać tekst między procesami. Znalazłem wiele przykładów tego, ale niestety, że mogę pracować. Oto co mam do tej pory:Użyj WM_COPYDATA do wysyłania danych między procesami
dla wysyłającego części:
COPYDATASTRUCT CDS;
CDS.dwData = 1;
CDS.cbData = 8;
CDS.lpData = NULL;
SendMessage(hwnd, WM_COPYDATA , (WPARAM)hwnd, (LPARAM) (LPVOID) &CDS);
część odbiorcza:
case WM_COPYDATA:
COPYDATASTRUCT* cds = (COPYDATASTRUCT*) lParam;
nie wiem jak skonstruować COPYDATASTRUCT, ja po prostu umieścić coś w to wydaje się działać. Podczas debugowania wykonywana jest sprawa WM_COPYDATA, ale znowu nie wiem, co zrobić z COPYDATASTRUCT.
Chciałbym wysłać tekst między dwoma procesami.
Jak zapewne wiesz, że właśnie zaczynam, używam kompilatora GNU GCC w Code :: Blocks, staram się unikać MFC i zależności.
Wiem, że drugi link (do flounder.com) używa MFC, którego nie używasz, ale zamieściłem go jedynie w celu zilustrowania, że powinieneś rozważyć przekazanie czegoś więcej niż zwykłego ciągu znaków. – Tadmas
Dzięki, mam to działa.Choć musiałem zmienić pierwszą linię do LPTSTR lpszString bo mam ten błąd: nieprawidłowy konwersji z 'const void *„do 'void *” –
Ten link jest bardzo pomocne: http: //code.msdn. microsoft.com/windowsdesktop/CppSendWMCOPYDATA-f75bc681/ – pcunite