控制台应用程序和 ssh 中的鼠标移动

Mouse movement in console application and ssh

我正在尝试构建一个 运行 显示较少 raspi 的应用程序。该应用程序应通过 ssh 启动。它应该捕捉鼠标移动。 (认为​​机器人需要所述鼠标来导航)

SDL 需要 window,而这并不是 ssh 和控制台的真正选项。 仅 gpm returns 按键。

有什么想法吗?

编辑:鼠标在 raspi 上。该应用程序将通过 ssh 启动,但这只是为了帮助调试。

您可以间隔轮询鼠标位置,如果位置发生变化,则通过 ssh 将鼠标位置发送到 raspi(发送新位置减去最后位置)

POINT lastpos;

void SendMousePos()
{
    POINT currpos;
    if (GetCursorPos(&currpos))
    {
        if(currpos != lastpos)
        {
            SendMovementToRaspi(currpos.x - lastpos.x, currpos.y - lastpos.y);
            lastpos = currpos;
        }
    }
}

在较低级别访问鼠标,例如通过 HID 层,直接访问相关的 /dev/input/event* 设备,例如使用 libhid