PostMessage WM_LBUTTONDOWN与位置有关的问题

时间:2019-08-22 22:14:49

标签: c++ input postmessage vnc

你好,谢谢阅读。

几个星期以来,我正在研究“ VNC”。功能非常基本。用户(U1)运行显示密码的程序。第二个用户(U2)输入(U1)用户的IP和密码。

我的代码可以正常运行(目前还没有任何错误),它可以正确显示屏幕并正确发送信息(单击,鼠标移动等)。

只有“一个”问题。发送到(U1)的位置是核心位置,但调用PostMessageA时,调用后鼠标的位置错误。我只使用WINAPI。

我使用以下API来获取屏幕尺寸:GetSystemMetrics()

然后执行以下操作:

InputStruct.lParam = MAKELPARAM(point.x, point.y);      
PostMessageA(hWnd, InputStruct.msg, InputStruct.wParam, InputStruct.lParam);

如果有人已经解决了该错误,我将非常高兴获得更多信息。我通常不问问题,而只是阅读问题,但是这次我真的很茫然。

非常感谢您的宝贵时间, 伊利。

编辑1:

谢谢您的意图,我的意思是这样的: (U2)使用袜子将消息发送到(U1),然后我解析它并获得“ lParam”

point.x = GET_X_LPARAM(InputStruct.lParam);
point.y = GET_Y_LPARAM(InputStruct.lParam);

然后我从这一点开始获得

hWnd = WindowFromPoint(point);

然后将其转换

ScreenToClient(currHwnd, &point);

最后调用PostMessage

InputStruct.lParam = MAKELPARAM(point.x, point.y);      

PostMessageA(hWnd, InputStruct.msg, InputStruct.wParam, InputStruct.lParam);

0 个答案:

没有答案