晴晴酱w 2023-05-15 13:16 采纳率: 0%
浏览 20

C++如何向指定程序写入鼠标事件,而不影响鼠标操作其他

想写一个游戏挂机插件,需要一直在游戏内长按鼠标左键来开枪,但不影响鼠标去游戏窗口外边干其他事,想问下大家,除了大漠插件,c语言里有没有原生支持此功能的方案,谢谢!

  • 写回答

2条回答 默认 最新

  • 创意程序员 2023-05-15 13:40
    关注

    可以试试使用Windows操作系统提供的WinAPI函数SendInput用来模拟鼠标和键盘的输入事件,示例如下:

    #include <windows.h>
    
    void simulateMouseClick()
    {
        INPUT input;
        input.type = INPUT_MOUSE;
        input.mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
        
        SendInput(1, &input, sizeof(INPUT));
        
        input.mi.dwFlags = MOUSEEVENTF_LEFTUP;
        
        SendInput(1, &input, sizeof(INPUT));
    }
    
    int main()
    {
        // 模拟鼠标点击事件,这里可以使用循环+延迟
        simulateMouseClick();
    
        return 0;
    }
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月15日

悬赏问题

  • ¥15 Xsheii7我安装这个文件的时候跳出来另一个文件已锁定文件的无一部分进程无法访问。这个该怎么解决
  • ¥15 unity terrain打包后地形错位,跟建筑不在同一个位置,怎么办
  • ¥15 FileNotFoundError 解决方案
  • ¥15 uniapp实现如下图的图表功能
  • ¥15 u-subsection如何修改相邻两个节点样式
  • ¥30 vs2010开发 WFP(windows filtering platform)
  • ¥15 服务端控制goose报文控制块的发布问题
  • ¥15 学习指导与未来导向啊
  • ¥15 求多普勒频移瞬时表达式
  • ¥15 如果要做一个老年人平板有哪些需求