2016年10月22日ここ数日PowerShellのライブラリ、UIAutomationを使ってアプリケーション操作自動化について記事を作成しました。ボタンばかりのアプリケーションであれば十分ですが、実際には右クリックしてコンテキストメニューを選択したり、パスワードやファイルパス指定のため文字列の入力と、クリック以外の動作をさせたい場合も出てきます。デフォルトの状態ではUIAutomationによってアプリケーションに赤枠が表示されたりしますので、解決方法についてまとめてみます。UIAutomationの赤枠を非表示にする。スクリプトにコメントを挿入する。まとめUIAutomationの赤枠を非表示にする。電卓での実験でもそうでしたが、デフォルトの状態ではスクリプトの実行中にアプリケーションに赤色の枠が表示されています。フォーカスがどこにあるかなどを知りたい場合などは役に立つかもしれませんが、普段は煩わしいのではないでしょうか。一文で非表示にすることができるので、インポート後あたりに次の文を追加すると非表示にすることができます。)場合など文字列の入力が必要になります。いくつか方法がありますが、単純な方法では以下の文が一番使いやすい気がします。World!")他にもSendKeyやSendWaitなどで入力することも可能ですが、私が実際に使用したテストではアプリケーションのダイアログにエラーが発生してしまいました。上記に変更したところ改善できたので、SendKeyやSendWaitを使っていて問題があった場合にはKeyborad.TypeTextに変更してみてはどうでしょうか。スクリプトにコメントを挿入する。普段のプログラミングと同様にスクリプトにもコメントを挿入したいときは多いはずです。自分だけでなく、他の人も見るのであれば必須とすら言えます。コメントは「#」の後に記述します。$falseアプリケーションの右クリックメニューを操作する正直もっといい方法がある気がするのですが...。UIAutomationSpyでは右クリックメニューのAutomationId/Nameしか情報を得られないので少し面倒です。一部分ではなく、メモ帳を例にスクリプトを記述します。コピー処理は省いているので何か簡単に文字列をコピーして動かしてみてくださいネ。テキスト入力エリアでコンテキストメニューを表示し、コンテキストメニューを取得する。770)をクリックする。テキスト入力エリアでコンテキストメニューを表示し、コンテキストメニューを取得する。770)をクリックする。Out-NullまとめUIAutomationの基本的な使い方などはブログなどでもよく紹介されていますが、いざ何かやってみようと思うとうまく情報を探せないことも多いです。実際にいろいろ使ってみて理解を深めることが大切と実感します。何かチャンスがあればPowerShellでできないか、と少しでも頭をよぎるようになればいいですよね。その4昨日までの記事でスクリプトから電卓のボタンを押下させ、計算させることができました。この記事でループを作成し、耐久テストのように延々と計算させ続ける処理に変更してみましょう。その1技術者となって一番多く、そして面倒な作業はテストではないでしょうか。単体テスト、システムテスト、結合テストとマイルストーンに従って、ちょくちょくテストしないといけません。その3さて昨日の記事でスクリプトから電卓を起動させることができました。その2前回の記事で、UIAutomationのDL、実行ポリシーの変更が完了しました。今回はUIAutomationを使って電卓を起動させてみましょう。