~UI Automationで画面操作捕捉!その2~ UI Automation with PowerShell 奮戦記 5日目
UI Automation*1で遊ぼう!
UI Automation の画面操作の捕捉機能を使用した画面ハードコピーの自動化に挑戦しています。Windowsの標準実装のみ、PowerShellのみで動作させることを目指しています。
UI Automationでの画面操作の捕捉をPowerShellで出来るようにEventタイプを.Net Framworkで実装しました。
実装した開発ライブラリ、共通で使用するスクリプトについては以下を確認してくださいね。
https://amon52280sub.hateblo.jp/entry/2019/01/23/032420
フォーカス移動のイベントを実装してみました。
$uia.StartEvent()の中でフォーカス移動イベントの登録を実行しています。
PowerShell Version3(管理者権限)で実行してみる。
# UI Automation 共通ファンクションを組み込む . .\UIA.ps1 # 初期化 $uia = UIA_Init # UI AUtomation イベント捕捉 Register-ObjectEvent -InputObject $uia -EventName UIChange -Action { Write-Host $args[0].current.name } # イベントスタート $uia.StartEvent()
実行結果
テキスト エディター ファイル(F) 編集(E) 書式(O) 表示(V) ヘルプ(H)
フォーカスが移動するたび表示しますね。他のイベントも実装していきたいと思います。