Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 控制台应用程序和ssh中的鼠标移动_C++_Linux_Ssh_Debian_Console Application - Fatal编程技术网

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

C++ 控制台应用程序和ssh中的鼠标移动,c++,linux,ssh,debian,console-application,C++,Linux,Ssh,Debian,Console Application,我正在尝试构建一个应用程序,该应用程序将在无显示raspi上运行。应用程序应该通过ssh启动。它应该能捕捉到老鼠的移动。(想想机器人需要鼠标来导航) SDL需要一个窗口,而对于ssh和console来说,这并不是真正的选项。 gpm只返回按键 有什么想法吗 编辑:鼠标位于raspi上。应用程序将通过ssh启动,但这只是为了帮助调试。您可以每隔一段时间轮询鼠标位置,然后通过ssh将鼠标位置发送到raspi(如果位置已更改)(发送新位置减去上次位置) 您可以每隔一段时间轮询鼠标位置,然后通过ssh将

我正在尝试构建一个应用程序,该应用程序将在无显示raspi上运行。应用程序应该通过ssh启动。它应该能捕捉到老鼠的移动。(想想机器人需要鼠标来导航)

SDL需要一个窗口,而对于ssh和console来说,这并不是真正的选项。 gpm只返回按键

有什么想法吗


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

您可以每隔一段时间轮询鼠标位置,然后通过ssh将鼠标位置发送到raspi(如果位置已更改)(发送新位置减去上次位置)


您可以每隔一段时间轮询鼠标位置,然后通过ssh将鼠标位置发送到raspi(如果位置已更改)(发送新位置减去上次位置)


您可以每隔一段时间轮询鼠标位置,然后通过ssh将鼠标位置发送到raspi(如果位置已更改)(发送新位置减去上次位置)


您可以每隔一段时间轮询鼠标位置,然后通过ssh将鼠标位置发送到raspi(如果位置已更改)(发送新位置减去上次位置)


访问较低级别的鼠标,例如通过HID层,直接访问相关的
/dev/input/event*
设备,例如使用访问较低级别的鼠标,例如通过HID层,直接访问相关的
/dev/input/event*
设备,例如使用访问较低级别的鼠标,例如,通过HID层,直接访问相关的
/dev/input/event*
设备,例如使用访问较低级别的鼠标,例如通过HID层,直接访问相关的
/dev/input/event*
设备,例如使用对不起,我不清楚。鼠标在raspi上,而不是主机上。ssh仅用于调试、停止和启动程序。谢谢你,如果我不清楚的话。鼠标在raspi上,而不是主机上。ssh仅用于调试、停止和启动程序。谢谢你,如果我不清楚的话。鼠标在raspi上,而不是主机上。ssh仅用于调试、停止和启动程序。谢谢你,如果我不清楚的话。鼠标在raspi上,而不是主机上。ssh仅用于调试、停止和启动程序。感谢您通过ssh查看鼠标移动?或者您想知道如何在raspi上运行的程序上移动鼠标?您可以在鼠标移动时通过ssh发送坐标,也可以在鼠标在raspi上时检查此项以获取鼠标移动。我希望看到鼠标通过ssh在远程主机上完成移动。最后,鼠标移动将用于运行deamon中的逻辑,该deamon必须通过ssh启动。所以一切都在raspi上。由于raspi没有显示,我们必须通过deamon/ssh激活该程序,因此不能通过sdl创建windows。所以我们可以说,我希望一个守护进程能够访问鼠标移动。或将鼠标移动转换为操纵杆移动。SDL可以在没有窗口的情况下捕获它。那么您希望通过ssh看到鼠标移动吗?或者您想知道如何在raspi上运行的程序上移动鼠标?您可以在鼠标移动时通过ssh发送坐标,也可以在鼠标在raspi上时检查此项以获取鼠标移动。我希望看到鼠标通过ssh在远程主机上完成移动。最后,鼠标移动将用于运行deamon中的逻辑,该deamon必须通过ssh启动。所以一切都在raspi上。由于raspi没有显示,我们必须通过deamon/ssh激活该程序,因此不能通过sdl创建windows。所以我们可以说,我希望一个守护进程能够访问鼠标移动。或将鼠标移动转换为操纵杆移动。SDL可以在没有窗口的情况下捕获它。那么您希望通过ssh看到鼠标移动吗?或者您想知道如何在raspi上运行的程序上移动鼠标?您可以在鼠标移动时通过ssh发送坐标,也可以在鼠标在raspi上时检查此项以获取鼠标移动。我希望看到鼠标通过ssh在远程主机上完成移动。最后,鼠标移动将用于运行deamon中的逻辑,该deamon必须通过ssh启动。所以一切都在raspi上。由于raspi没有显示,我们必须通过deamon/ssh激活该程序,因此不能通过sdl创建windows。所以我们可以说,我希望一个守护进程能够访问鼠标移动。或将鼠标移动转换为操纵杆移动。SDL可以在没有窗口的情况下捕获它。那么您希望通过ssh看到鼠标移动吗?或者您想知道如何在raspi上运行的程序上移动鼠标?您可以在鼠标移动时通过ssh发送坐标,也可以在鼠标在raspi上时检查此项以获取鼠标移动。我希望看到鼠标通过ssh在远程主机上完成移动。最后,鼠标移动将用于运行deamon中的逻辑,该deamon必须通过ssh启动。所以一切都在raspi上。由于raspi没有显示,我们必须通过deamon/ssh激活该程序,因此不能通过sdl创建windows。所以我们可以说,我希望一个守护进程能够访问鼠标移动。或将鼠标移动转换为操纵杆移动。SDL可以在没有窗口的情况下捕获这些信息。
POINT lastpos;

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