2011-07-08 5 views
0

サードパーティのActiveXコントロールをラップするために使用しているC#ActiveXコントロールラッパーを作成しました。サードパーティのActiveXコントロールラッパーからすべてのGDIオブジェクトを廃棄します。

ActiveXコントロールラッパーが登録されており、これをDynamics AXのフォームに追加できます。フォームを開くと〜400のGDIオブジェクトが毎回作成されます。しかし、私が持っている問題は、AXフォームが閉じられても、GDIオブジェクトのどれも解放されないということです。

最終的に私はAXの中で次のエラーが発生します。

enter image description here

私は明示的にサードパーティ製のコントロールに処分を呼び出していますどこ私はラップからに呼び出すことができます私のC#のラッパーで、私が作成したメソッドを持っています。ただし、作成されたGDIオブジェクトの半分(〜200/400)を整理するだけです。

問題は、AXフォームが開かれ、閉じられるたびに〜200個の新しいGDIオブジェクトが作成されます。

私はGDIの作成オブジェクトの残りの部分を取り除くためにで他に何を見てすることができます(またはほぼすべてのそれらの?)

答えて

0

これは既知のバグであり、修正プログラムがそのために利用可能です。ただし、これは2009 SP1の問題です。 ダイナミクスフォーラムでこの議論に従ってください:http://community.dynamics.com/product/ax/f/33/p/30936/52754.aspx リンクは、この修正プログラムのKBで提供されています

グリッドのフィルタリングは、この課題の一つであるが、それをチェックするために良いだろう。

関連する問題