Xクライアントメッセージをスパイするにはどうすればよいですか?


回答:


8

xtraceでアプリケーションを実行します。Xクライアントメッセージを送受信するコマンドを含む、アプリケーションとXサーバー間のすべての通信を記録します。

xtrace myapp

それは私が解決しようとしていることの一種です-どのアプリケーションがそれをそこに置いていますか?私はクラスウィンドウクラス名:を持っていますgnome-power-managerが、それと呼ばれるアプリケーションはありません。デーモンとして実行されている「power」に一致するものはありません。
Shawn J. Goff

1
@ ShawnJ.Goffサーバー側、つまりシステムトレイをトレースします。
Gilles「SO-邪悪なことをやめなさい」12/06/24

ああ、そしてコミュニケーションはウィンドウイベント経由であり、dbus経由ではないことを確信していますか?
Gilles「SO-邪悪なことをやめよう」

1
@ ShawnJ.Goff gnome-power-managerは今日の一部ですgnome-settings-daemon
Ulrich Dangel

3

コマンド

    xev -id WINDOW_ID

X11の「ウィンドウイベント」を出力します。X11では、これらは「イベント」と呼ばれます。(Microsoft Windowsの「メッセージ」とは対照的)。

ウィンドウIDを取得するには、xwininfoを使用します。

man xev、man xwininfo。


2
[クライアントメッセージ] [1]は一種のイベントのようです。freedesktop [システムトレイの仕様] [2]は、特に「xクライアントメッセージ」について話します。いずれの場合でも、私は正しいウィンドウを持っていますが、xevどのプログラムがどのイベントをそのウィンドウに送信しているかについての情報は提供していませんが、そのステータスは間違いなく何かによって更新されています。[1]:tronche.com/gui/x/xlib/events/client-communication/... [2]:standards.freedesktop.org/systemtray-spec/...
ショーンJ.ゴフ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.