問題タブ [automationelement]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ターゲット アプリケーション プロセスでの UIA オートメーション要素 GDI リーク
実行時に Win32、WPF コントロールを見つけるための Automation Element 実装を含む独自の拡張メソッドを作成しました。
動的属性と親コントロールを入力として指定し、UIA の概念を使用してコントロールを見つけ、再び CodedUI コントロール (WinControls/WpfControls) としてコントロールを返します。
CodedUI を使用して一部のカスタム コントロールが識別されなかったため、この概念を実装しました。この UIA 概念を実装した後、自動化コードの安定性が向上しました。
スクリプトを Smoke/Regression として実行している間は問題に直面していませんでしたが、CycleTest で同じことを行っている間 (Smoke スクリプトを 30 回繰り返して実行していたように)、ターゲット アプリケーション プロセスで一貫して GDI メモリ リークが発生しましたが、直面していません。 UIMaps に関するこの種の問題。
GDI オブジェクトを解放するためにさまざまな方法を試しましたが、どれも役に立ちませんでした。ここにラッパーメソッドを配置しました。