SetWindowsHookEx
Windows でこれを行うには、またはを使用してグローバル メッセージ フックをインストールしますSetWinEventHook
。(別の方法として、Python を埋め込んでブラウザーまたはその Flash ラッパー アプリにフックする DLL を作成し、アプリ内からそれほど邪魔にならないようにすることもできますが、それははるかに手間がかかります。)
欲しいメッセージはWM_SETCURSOR
. これは、カーソルが変更されたときに送信されるメッセージではなく、カーソルを変更するかどうかを尋ねるために Windows からアプリに送信されるメッセージであることに注意してください。したがって、IIRC では、aWH_CALLWNDPROC
と aを配置して前後にWH_CALLWNDPROCRET
チェックし、アプリがそうしたかどうかを確認する必要があります。GetCursorInfo
では、Python からこれを行うにはどうすればよいでしょうか。win32api
正直なところ、パッケージの両方と友人をまだ知らない場合pywin32
、および Windows メッセージ proc を何らかの言語で記述する方法をまだ知らない場合は、おそらくしたくないでしょう。あなたが望むなら、UNC Assist の (放棄された) pyHookプロジェクトから始めたいと思います。動かなくても、役立つソースコードが満載です。
また、 SO で[python] SetWinEventHook
and を検索[python] SetWindowsHookEx
し、少しグーグルで検索する必要があります。そこにいくつかの例があります(私もここのどこかに書いた…)
pywinauto
や などの高レベルのラッパー フレームワークを見ることができますがwinGuiAuto
、私の知る限り、イベントをキャプチャするのに役立つものはありません。
必要なすべての機能を備えているが、Python モジュールには含まれていない他のツール、おそらくAutoItがあると思います。(たとえば、AutoIt には代わりに独自の VB に似たスクリプト言語があります。)