背景をちょっと…
UI のコントロールとランダムにやり取りする UI 自動化アプリを開発しています。自動化されるアプリと UI はどちらも WPF アプリケーションです。UI オートメーション アクセシビリティ フレームワークを使用しています。時折、キャッチして処理するアプリで ElementNotAvailableException が発生します。ANTS 7 を使用して UI をプロファイリングしているときに、これらの例外が Gen 2 ガベージ ヒープに表示されていることに気付きました。例外の新しいインスタンスは、アプリで例外をキャッチした回数と一致します。
WinDBG を使用した GCRoot と UIAutomation ページを調べましたが、自動化されているアプリでキャッチされた例外が表示される理由について明確な説明が見つかりませんでした。UI が自動化されているときにオブジェクトが解放されず、自動化アプリを閉じてもオブジェクトが残ります。
何か案は?