前回、せっかくUIAutomationをWinActorに組み込めるようになったから意気揚々といろんなアプリ操作を自動化してやろうと意気込んでみたら・・・いきなり壁にぶち当たる。
AutomationIDが空っぽだったり、そこら中に"1"とか重複したフォームがあるアプリがあった。
ClassNameのとこ見たら、「SunAwtFrame」ってなってた。
SunAwtこれって、Javaか。
よく見たらMicrosoftさんもこの様に言っていた。
Inspectツールでなんとなく内容読めるからいけると思ったのになぁ
WinActorのJava関連、Path取得の機能を使ってみるチャンスかな?
でも、WinActorのJava関連ライブラリ使うには、「Java Access Bridge」なるものを有効化しなければならないらしい。
有効化したからと言って必ず操作できる訳でもないみたいで、Javaのバージョンとかアプリの相性でうまく動かないときもあるみたい。
もし、ダメで設定元に戻したいって時は、コンパネから「Java Access Bridge」を無効かするだけじゃなくC:¥Users¥【ユーザ名】に保存されている「.accessibility.properties」ファイルのパスを切る必要があるみたい。
・・・いろいろ面倒くさいな。
AutomationID以外のプロパティはInspectツールで取れてるんだし、プロパティの組み合わせとかで要素特定してなんとか操作できないかなぁ・・・。
UIAutomation側を、もう少し修行してみよう。