0

UIオートメーションを使用して、Silverlightアプリで画面の操作を記録しようとしています。コントロール設定用の自動化ピアがありますが、これらのコントロールを追跡する方法がわかりません。

私のWPFアプリの場合は、取得AutomationElement.RootElementしてからアプリに移動し、関心のあるコントロールに自動化イベントハンドラーを設定します。

Silverlightアプリでも同じことをするにはどうすればよいですか?アプリを実行するたびにスクリーンレコーダーを自動的に起動したい。スクリーンレコーダーは私のアプリ内に配置する必要があります。ただし、 Silverlight名前空間にはクラスSystem.Windows.Automationがありません。AutomationElementでは、Silverlightでこれをどのように行うのでしょうか?

ありがとう
Shivaprasad

4

1 に答える 1

2

ご覧のとおり、AutomationElement クラスは Silverlight には存在しません。UIAutomation API は完全な .Net フレームワークでのみ使用できます。Silverlight は UI オートメーション プロバイダーとしてのみサポートされます。つまり、Silverlight アプリケーションは UI オートメーションによって制御できますが、他のアプリケーションを制御することはできません。

このため、Silverlight アプリケーション内でスクリーン レコーダーを作成することはできないと思います。

このようなハッキングには次のものが含まれる可能性があります。

  • Silverlight COM Automationを使用して、新しいUIAutomation COM APIを呼び出します。ユーザーは、Silverlight に加えて、自分のマシンに COM API をインストールする必要があります。
  • 実際の UIAutomation 作業を行うターゲット マシンで実行できる「サーバー」アプリケーションを .Net で作成し、WCF を使用して Silverlight アプリケーションからこれと通信します。
于 2010-10-01T09:30:26.117 に答える