windows - 罗技 lua 可靠睡眠
问题描述
介绍
我正在为我的罗技鼠标编写一个 lua 脚本。罗技 lua api 有这个文档。
我的脚本每 x 毫秒移动一次鼠标以绘制图案。我的问题是这个 lua api 的 Sleep(x) 函数非常不准确。我已经读过它需要时间(几毫秒)才能获得一个线程,因此时间会增加代码本身的执行时间。但是,它对于测量毫秒毫无用处。
问题
你知道解决方法吗?有没有比 Sleep(x) 函数更有效的方法来测量毫秒?
我还想指出,在 Windows 10 版本 1909 及以下版本中,它要准确得多。他们弄乱了它,因此自 Windows 10 2004 版(去年 8 月左右)以来它是不准确的。所以我需要为此找到解决方法。
我的代码
这是我的代码片段:
PressMouseButton(1)
--1
MoveMouseRelative(-26, 36)
Sleep(127)
--2
MoveMouseRelative(2, 36)
Sleep(127)
--3
MoveMouseRelative(-36, 32)
Sleep(127)
--4
MoveMouseRelative(-33, 30)
Sleep(127)
--5
MoveMouseRelative(-11, 38)
Sleep(127)
ReleaseMouseButton(1)
这本身不起作用,但您可以在这里看到我想如何使用该功能。谢谢您的帮助!
解决方案
Sleep
不是为了测量毫秒。它会暂停您的脚本一段时间。
据我所知,无法从 Logitech 脚本加载任何库。
所以你只能使用Sleep
或运行一个循环来延迟。
推荐阅读
- python - 使用 numPy 和 matplotlib 绘制函数相对于两个变量的最大值
- r - 如何将数据点标记到集群?
- c++ - QtPropertyBrowser 在 VS2019 中编译错误
- c# - 在 Xunit 中模拟-如何验证返回某些值的方法
- swift - SwiftUI 设置图像边界
- r - 使用 purrr 更改每个列表(嵌套列表)的每个元素
- java - Encrypt two given strings
- reactjs - React Ant 设计表 - 自定义搜索过滤器
- android - 如何在android中创建自定义全屏ovarlay对话框
- c++ - 在 C/C++ 中,我试图在没有 if-else 阶梯的 for 循环中调用不同的函数(在描述中解释)