在Xvfb服务器中获取窗口列表

5

我正在尝试获取Debian Squeeze机器中Xvfb服务器的窗口列表。

我的操作如下:

$ Xvfb :2&
$ DISPLAY=:2; wmctrl -l

但我遇到了这个错误:
Cannot get client list properties. (_NET_CLIENT_LIST or _WIN_CLIENT_LIST)

这是正常的吗?还是我漏掉了什么?谢谢!

DISPLAY=:2 xwininfo -tree -root 的结果是什么? - Andrey Sidorov
结果是:`xwininfo: 窗口ID:0xe8(根窗口)(没有名称) 根窗口ID:0xe8(根窗口)(没有名称) 父窗口ID:0x0(无) 0个子项。` - sgimeno
当我启动Xvfb时,我也会收到这个消息:SELinux:系统已禁用,不会在X服务器中启用 - sgimeno
@AndreySidorov 谢谢你的回答!!你的命令有效。现在我明白了,wmctrl -l 仍然不起作用,因为我还没有在 :2 中启动窗口管理器。一旦我启动它,就有了 _NET_CLIENT_LIST 的支持。 - sgimeno
@sgimeno:很高兴你把它搞定了。我也遇到了同样的问题。你能详细说明一下你如何启动哪个窗口管理器吗? - richelbilderbeek
@richelbilderbeek 确定。_NET_CLIENT_LIST或_WIN_CLIENT_LIST属性由窗口管理器在根窗口中设置,以保持窗口管理器管理的窗口列表。所以在我的情况下,问题是DISPLAY:2中没有启动窗口管理器。要启动它,您可以执行(例如fluxbox):DISPLAY =:2; fluxbox。我希望这可以帮助到您。 - sgimeno
1个回答

1

我遇到了类似的问题。在我的情况下,xfce-panel没有配置好。 最后我执行了:

sudo chmod -x /usr/bin/xfce4-panel

这解决了问题(我不需要这个面板)。 这是一种不正规的方法。正确的方法是配置面板。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接