既存の .NET 3.5 アプリケーションを Eclipse のプラグインに移植しています。
C# で記述されたカスタム UserControl を Eclipse に組み込みたいと考えています。COM コントロールとして正常にエクスポートされ、Eclipse Europa でうまく動作します。
Ganymede では、OLE ロード コードが変更されたようで、元々 Europa で機能していたものが失敗します。
具体的なエラーは、Ganymede がコントロールをロードし、IOleObject をクエリし、適切なインターフェイスを受け取り、その上で SetClientSite を呼び出すときに発生します。これにより、オブジェクトが両方の参照を失い、割り当てが解除されます (Ganymede はその後クラッシュします)。まったく同じコントロールが、Visual C++ デザイナーと Europa の両方で問題なく機能します。
明らかな .NET 属性と UserControl 以外に、継承する必要がある特定のクラスはありますか? 実装する必要がある特定のインターフェイス、または Europa/VC と Ganymede の間の特定の動作の変更はありますか?
ありがとう!