让守护进程使用 xdo 模拟按键

问题描述 投票:0回答:2

我正在尝试让守护进程模拟按键。我已经让它在非守护进程中工作了。

#include <xdo.h>

int main() 
{
    xdo_t * x = xdo_new(NULL);
    xdo_enter_text_window(x, CURRENTWINDOW, "Hallo xdo!", 500000);
   
    return 0;
}

如果我为我的守护进程尝试相同的代码,我会收到以下错误

Error: Can't open display: (null)

有没有办法让它与 xdo 或其他东西一起工作?

c daemon xdotool
2个回答
0
投票

您的进程必须知道

$DESKTOP
环境变量,指定要将这些密钥发送到的桌面会话,而您的进程似乎没有设置该环境。

这也意味着您必须意识到它需要拥有所有必要的权限,这意味着可以访问会话所有者的

~/.Xauthority
以及
/tmp/.X11-unix

中的套接字

0
投票

我会把它放在那里,以防它对某人有帮助。但我不能说这会解决 OP 问题。

在我的 crontab 中,我设置了一个视觉警报器。它一开始就失败了,因为它不知道我使用的是什么显示器。但是在我要执行的命令之前添加以下内容,它开始工作。

export DISPLAY=:0; COMMAND_YOU_WISH_TO_RUN

© www.soinside.com 2019 - 2024. All rights reserved.