
I am having problem sending WM_COPYDATA message to a 16bit app.
Unfortunately I have to talk to a 16 bit app. I have gotten to the point
where I send a WM_COPYDATA message to a 32 bit and it works great. But
when I reversed the process of sending a WM_COPYDATA message to the 16 bit
app I get garbage in the data pointer. I have checked the 32bit app and it
works fine with a 32bit app. I'm sure I'm doing something wrong with the
pointers but I'm at a loss.
typedef struct tagCOPYDATASTRUCT
{
DWORD dwData;
DWORD cbData;
VOID FAR *lpData;
Quote:
} COPYDATASTRUCT, FAR *LPCOPYDATASTRUCT;
pMyCDS = (LPCOPYDATASTRUCT) lParam;
PtMyRec = pMyCDS->lpData;
MessageBox(hWnd,(LPSTR)
PtMyRec->result,szAppName,MB_ICONSTOP|MB_OKCANCEL|MB_TASKMODAL);
strcpy(MsgD, PtMyRec->result);
dislog("Number is :%d",PtMyRec->x);
dislog("%s",MsgD);