カテゴリ[PowerShellでRPA]では、UI AutomationをPowerShellで使えるようにしたライブラリ「UI Automation PowerShell Extensions」を利用して、画面の操作を自動化する方法を紹介しています。操作対象画面は、Windows10の「マウスのプロパティ」です。
■処理フロー
■スクリプト
■処理フロー
「コントロールパネル」を開く。
「マウスのプロパティ」を開く。
[ハードウェア]タブをクリックする。
[デバイス(D):]データグリッドの内容を取得する。
■スクリプト
Import-Module C:\UIAutomation\UIAutomation.0.8.7B3.NET35\UIAutomation.dll [UIAutomation.Preferences]::Highlight=$false #「コントロールパネル」を開く。 Start-Process C:\Windows\System32\control.exe #「コントロールパネル」ウィンドウを取得する。 $ctlwndw = Get-UiaWindow -Name 'すべてのコントロール パネル項目' #「マウスのプロパティ」を開く。 $ctlwndw | Get-UiaHyperlink -AutomationId 'name' -Class 'ControlPanelLink' -Name 'マウス' | Invoke-UiaLinkLabelClick | Out-Null #ウィンドウ表示を待つために待つ。 Start-Sleep -s 2 #「マウスのプロパティ」ウィンドウを取得する。 $wndw = Get-UiaWindow -Name 'マウスのプロパティ' #[ハードウェア]タブをクリックする。 $wndw | Get-UiaTabItem -Name 'ハードウェア' | Invoke-UiaTabItemClick | Out-Null #[デバイス(D):]データグリッドの内容を取得する。 $grid = $wndw | Get-UiaDataGrid -Name 'デバイス(D):' | ConvertFrom-UiaDataGrid #取得内容を「,」で分割して配列に格納する。 $array = New-Object "object[,]" 10,2 for( $i=0; $i -lt $grid.Length; $i++ ){ $wk = $grid[$i] -split "," #配列に格納する内容を表示する。 $wk $array[$i,0] = $wk[0] $array[$i,1] = $wk[1] } '-----------------------------------' #[名前]のみ表示する。 for( $i=1; $i -lt $array.Length; $i++ ){ $array[$i,0] }
コメント
このブログにコメントするにはログインが必要です。
さんログアウト
この記事には許可ユーザしかコメントができません。