~UI Automationって動くの?その4~ UI Automation with PowerShell 奮戦記 8日目

UI Automation*1で遊ぼう!

UI Automationって動くの? まとめてみる。


PowerShellの動作環境

以下の環境で動作確認出来ています。

- OSのUACを無効にする。
- PowerShellを管理者権限で実行する。
- PowerShellスクリプト実行を有効にする。
- Version 2(or 3)で実行する。


  

スクリプトを作るにあたって注意すること

以下の追加処理がないと正しい値が取得出来ません。

# UI Automation を組み込む
Add-Type -AssemblyName UIAutomationClient
Add-Type -AssemblyName UIAutomationTypes
 .Net Frameworkプログラムで
 elmentのrootを取得するメソッドを作成
 そのメソッドを呼び出す
例:
Import-Module .\MyUIAutomation20.dll
# 不具合回避
[MyUIAutomation.UIAAutomation]::GetRoot() | Out-Null

 

UI Automationのイベントについて

以下のイベントの動作不可を確認しています。

〇AddAutomationFocusChangedEventHandler
〇AddAutomationEventHandler
〇AddAutomationPropertyChangedEventHandler
〇AddStructureChangedEventHandler

 

また判明次第追記します。

*1:ここでのUI AutomationはSystem.Windows.Automationのことです