2015-09-03 43 views
1

我需要在Linux下獲取打開的窗口列表。使用node-x11庫打開X服務器窗口列表?

我可以使用node-x11庫列出所有打開的xorg窗口嗎?

我嘗試使用xlib作爲這個庫的python示例,但不適用於它。

var x11 = require('../../lib'); 
x11.createClient(function(err, display) { 
    console.log('succesfully connected to \"' + display.vendor + '\" server'); 
    console.log(display.client.QueryTree()); 
    display.client.terminate(); 
}); 

出錯。

events.js:72 
     throw er; // Unhandled 'error' event 
       ^
Error: Bad window 
    at ReadFixedRequest.callback 

回答

1

窗口管理例如:

var X, x11 = require('../lib'); 

x11.createClient(function(err, display) { 
    X = display.client; 
    root = display.screen[0].root; 

    X.QueryTree(root, function(err, tree) { 
     console.log(tree.children); //output all windows tree 
    }); 
});