如何获取指定窗口鼠标点击位置

0
HWND hwnd = FindWindow(NULL,"明日方舟 - MuMu模拟器");
	BOOL l;
	MSG x;

	if(!hwnd)
	{
		cout << "未开启明日方舟" <<endl;
		hwnd = FindWindow(NULL,"MuMu模拟器");
	}

	if(l = GetMessage(&x,hwnd,WM_MOUSEFIRST,WM_MOUSELAST)!=0)
	{
		if(l==-1)
		{
			cout << "error1" << endl;
			return 0;
		}
		else
		{
			cout << x.pt.x << "," << x.pt.y <<endl;
		}
	}

我想要获取鼠标点击在窗口中的位置而不是对屏幕的位置

但是我运行到GetMessage那一步就卡住了,去目标窗口点击之后它也不会收到消息

有哪里出问题了吗

ava
④‹

2020-6-4

-1

屏幕坐标与窗口坐标可以换算。

在其它进程执行 GetMessage 不可行。你需要用到钩子技术。

ava
慢羊羊

2020-6-4

技术讨论社区