如何给别的应用程序里的CListCtrl控件发送NM_CLICK消息? 此题有点难度
我想在程序1里,给程序2的CListCtrl控件发送一个单击消息。
代码如下:
NMHDR nh;
GetWindowThreadProcessId(hWndExt,&dwProcessID); //hWndExt是程序2的窗口句柄
hProcess=OpenProcess(PROCESS_ALL_ACCESS,FALSE,dwProcessID);
lpListItemRemote=VirtualAllocEx(hProcess,NULL,sizeof(NMHDR),MEM_COMMIT,PAGE_READWRITE);
nh.hwndFrom = hWndSrcList; //hWndSrcList是程序2的ListCtrl的句柄
nh.idFrom = 1005; //1005是程序2的ListCtrl的ID
nh.code = 0xfffffffe;
bWriteOK=WriteProcessMemory(hProcess,lpListItemRemote,(LPVOID)&nh,sizeof(NMHDR),(LPDWORD)&dwBytesWrite);
::SendMessage(hWndXiaDan,WM_NOTIFY, NM_CLICK, (LPARAM)lpListItemRemote);
结果我在listctrl的那个程序里捕捉不到该WM_NOTIFY消息,因此没有响应NM_CLICK消息。请高手指点。