2012-04-24 7 views
0

新しいアプリドメインにプラグインを読み込むスレッドがたくさんあることは知っています。私のせいで私はそれらを前に読んでいない。私はこの学校プロジェクトを持っている。プラグインベースのアプリで、ほとんど完了している。 1つの重要な点を除いて - プラグインは新しいドメインにロードする必要があります。私はこの記事を使用してプラグインベースのアプリケーションを作成しますhttp://www.codeproject.com/Articles/6334/Plug-ins-in-CUserControlプラグインでSystem.Addを使用する

私は現在、プロジェクトの期限が切れていると私は同じアプリケーションドメイン内のプラグインで立ち往生しています。以前のスレッドでは、System.AddInを使用するようにアドバイスされました(私はそれを期待していました)。しかし、思うことはほとんどありません。System.AddInを使用してUserControl要素を含む可能性のあるプラグインを見つけることができませんでした。

ありがとう。

答えて

1

多分、System.AddInは、学校のプロジェクトのための少し過剰です。それは非常に高い学習曲線を持っています。私はあなたが正しい方向にいると信じています。あなたはどのように上の基本を理解する必要があります:あなたのアドインクラスはMarshalByRefObjectを

  • から派生してください
  • 新しいアプリケーションドメインを作成します

    • をアドインクラスの新しいAppDomainの上のインスタンスを作成します。

    残りのプログラムでは、これをすべて認識しません。実際のアドインオブジェクトが新しいAppDomain上にある間は、メインのAppDomainでプロキシオブジェクトを使用するため、同じになります。すべてのインフラストラクチャが.Net Remotingの世話をしています。

    よろしくお願いいたします。

  • +0

    あなたの答えはパノスです。私はこのhovewerを見てみるつもりはないが、PluginInterfaceなどでエクステンデッドAddInクラスを組み合わせる方法はわからない。:(あなたは何か提案がありますか? – Gabbo

    +0

    あなたが言及している例は、新しいアドインをロードするように正しく変換できません(MSDN)(http://msdn.microsoft.com/en-us/library/8bxxy49h.aspx)によると、Windowsフォームコントロールは、渡されるように設計されていませんアプリケーションドメインの境界ですので、この例をそのまま使用することはできません.UserControlを削除して他のプロパティを保持すれば、それほど難しくありません。 UserControlなし、名前、説明など –