使用Lua模拟键盘输入。

当我想模拟键盘和鼠标输入时,通常使用java.awt.Robot,它效果非常好。

最近我听说了另一种语言 Lua,我尝试了一下。我写了一些小程序,运行得很好,但现在我正在尝试像在java中一样模拟键盘,但我无法使它正常工作。

最令人沮丧的部分是,我在Google上找到了使用Lua中的PressAndReleaseKey('someKey')函数的示例,并且这些代码似乎不需要库,但我无法使这个函数正常工作(它们似乎总是与logitech相关,因此可能仅适用于logitech驱动程序?)。所以我不确定这是否是我正在寻找的东西。

那么,简而言之,我的问题是:如何使用Lua程序模拟键盘输入?

例如,如果我在终端中输入

lua test.lua

并且文件如下所示:

while(true) do
     thefunctionIsearch('a')
end

那么程序应该无限地打字母'a'。

如果可能的话,我在Linux(Ubuntu)上。

点赞
用户501459
用户501459

这些代码似乎不需要任何库

在没有额外的库的情况下是不可能实现的。在 C 中没有外部库的情况下也不能实现它,而 Lua 的标准库完全是使用 C 的标准库实现的。

它们似乎总是与罗技有关,因此可能仅限于在罗技驱动程序中使用

罗技有可在 Lua 中编写脚本的键盘,因此您几乎肯定是在看到 Lua 的罗技特定扩展,这些扩展在原始的 Lua 中不可用。

如何使用 LUA 程序模拟键盘输入?

找到或编写一个模块来执行此操作。如果您了解 C,那么它非常简单。

或者,如果您可以找到在 Linux 上执行此操作的共享库,则可以使用 LuaJIT 的 FFI 直接与该库进行接口而无需查找/编写模块。

2015-11-03 19:21:36