ふらっとVisual C#,C♯,C#(初心者用) Part103
■ このスレッドは過去ログ倉庫に格納されています
0668デフォルトの名無しさん
2013/03/31(日) 17:24:49.79UI Automationを使ってみようと思ったんですが、アプリケーションによっては
UI Spyで見えるエレメント全部を取得できない場合があります。
コードはこんな感じで、VC#は管理者権限で実行しています。
AutomationElement ae = AutomationElement.FromHandle( ウィンドウハンドル );
AutomationElement node = TreeWalker.RawViewWalker.GetFirstChild(ae);
while ( node != null )
{
// 子を処理
node = TreeWalker.RawViewWalker.GetNextSibling(node);
}
これでたとえばリソースモニターだと一通りのエレメントを取得できるのですが、
SpeedFanだとシステムメニューしか取得できません。また、関係あるかわかりませんが、
RuntimeIdの値がUI Spyとプログラムで取得したものが異なりました。
対象のアプリの作りの違い(.Netかどうかとか)でこのような違いが出るのでしょうか?
また、UI Spyのようにすべて取得するにはどのようにすればよいでしょうか?
■ このスレッドは過去ログ倉庫に格納されています