7

我知道如何使用 mouse_event 来模拟鼠标左键或右键的单击。我想知道的是C#/C++中的这个或另一个函数是否允许你模拟游戏鼠标的mouse4或mouse5按钮?

4

2 回答 2

2

mouse4mouse5在 windows 中命名xbutton1xbutton2

你可以使用这些:

mouse_event(MOUSEEVENTF_XDOWN, NULL, NULL, XBUTTON1, NULL);
mouse_event(MOUSEEVENTF_XDOWN, NULL, NULL, XBUTTON2, NULL);
mouse_event(MOUSEEVENTF_XUP, NULL, NULL, XBUTTON1, NULL);
mouse_event(MOUSEEVENTF_XUP, NULL, NULL, XBUTTON2, NULL);
于 2013-02-02T12:08:46.590 回答
0

您可以创建一个RAWINPUT结构并使用WM_INPUTwindows 消息将其发送到窗口。

WM_INPUT 参考
RAWINPUT 参考
RAWINPUT P/Invoke 参考

特别是,您需要创建一个RAWMOUSE结构以在RAWINPUT. 的字段可以包含有关第 4 和第 5 个鼠标按钮的信息RAWMOUSEusButtonFlags

RAWMOUSE 参考
RAWMOUSE P/Invoke 参考
RAWMOUSEBUTTONS 枚举 P/Invoke 参考

您需要使用的具体实现取决于目标应用程序和平台。WM_INPUT在接收任何消息之前,您可能需要为原始输入注册窗口。

于 2012-12-10T15:01:19.820 回答