利用 SendInput 和INPUT结构 模拟鼠标移动

简介: int x = GetDlgItemInt(IDC_EDIT1) ; //要移动到的 x 坐标 int y = GetDlgItemInt(IDC_EDIT2) ; // y int cx_screen = ::GetSystemMet...
    int x = GetDlgItemInt(IDC_EDIT1) ;   //要移动到的 x 坐标
    int y = GetDlgItemInt(IDC_EDIT2) ;   //           y

    int cx_screen = ::GetSystemMetrics(SM_CXSCREEN);  //屏幕 宽
    int cy_screen = ::GetSystemMetrics(SM_CYSCREEN);  //

    int real_x = 65535 * x / cx_screen;  //转换后的 x
    int real_y = 65535 * y / cy_screen;  //         y

    INPUT input;
    input.type = INPUT_MOUSE;
    input.mi.dx = real_x ;
    input.mi.dy = real_y ;
    input.mi.mouseData = 0;
    input.mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;   //MOUSEEVENTF_ABSOLUTE 代表决对位置  MOUSEEVENTF_MOVE代表移动事件
    input.mi.time = 0;
    input.mi.dwExtraInfo = 0;

    SendInput(1,&input,sizeof(INPUT));

 

相关文章
|
JSON 开发工具 git
工作五年多,idea插件推荐(一)
工作五年多,idea插件推荐(一)
|
11月前
|
调度 数据库
什么场景下要使用分布式锁
分布式锁用于确保多节点环境下的资源互斥访问、避免重复操作、控制并发流量、防止竞态条件及任务调度协调,常见于防止超卖等问题。
344 4
|
Python
在Python中绘制K线图,可以使用matplotlib和mplfinance库
【5月更文挑战第1天】使用Python的matplotlib和mplfinance库可绘制金融K线图。mplfinance提供便利的绘图功能,示例代码显示如何加载CSV数据(含开盘、最高、最低、收盘价及成交量),并用`mpf.plot()`绘制K线图,设置类型为'candle',显示移动平均线(mav)和成交量信息。可通过调整参数自定义图表样式,详情参考mplfinance文档。
791 2
|
算法 编译器 C语言
【C++ 函数 基本教程 第六篇 】深度解析C++函数符号:GCC与VS的名称修饰揭秘
【C++ 函数 基本教程 第六篇 】深度解析C++函数符号:GCC与VS的名称修饰揭秘
541 1
|
API Windows
微软新一代输入法框架 TSF - Text Service Framework 小小的研究
原文:微软新一代输入法框架 TSF - Text Service Framework 小小的研究 虽说是转载的,但是其中,有很多我自己的评论,我会用红色的字标出来,参考的博文有: TSF架构:http://blog.
4707 0
|
Web App开发 人工智能 机器人
Web LLM 让你在浏览器中体验 GPT 大模型
Web LLM 让你在浏览器中体验 GPT 大模型
|
编译器 Linux 测试技术
【C++从0到王者】第十三站:vector源码分析及手把手教你如何写一个简单的vector
【C++从0到王者】第十三站:vector源码分析及手把手教你如何写一个简单的vector
388 0
|
.NET Windows 开发框架
|
编解码 数据安全/隐私保护
中继网关转码设备与IMS对接说明
中继网关转码设备与IMS对接说明
|
安全 API 数据安全/隐私保护
[笔记]Windows安全之《二》Session0隔离及相关启动技术
Windows安全之《二》Session0隔离及相关启动技术
1207 0
[笔记]Windows安全之《二》Session0隔离及相关启动技术