2009-03-16 10 views
1

重複した投稿の場合は申し訳ありません。 link text実行時にC#の参照が追加されます

しかし、私は、任意の透明な溶液を得るdidntの..

私のアプリケーションの負荷様々なdllファイル、およびそれらを処理します。だから、実行時に参照リストにdllを追加する必要があります。

実行時にC#プロジェクトで参照としてアセンブリ(dll)を追加するにはどうすればよいですか?私は実行時に参照を追加する必要があります。つまり、通常は参照先をで追加します。ソリューションエクスプローラの右クリック参照で、任意のdllを参照して参照に追加することができます。私はコードを使用してこれを行う必要があります。ここで

using System; 
using System.Collections.Generic; 
using System.Text; 
using System.Reflection; 
namespace GetType_success 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Assembly a = Assembly.LoadFrom(@"C:\Documents and Settings\E454935\My Documents\Visual Studio 2005\Projects\nunit_dll_hutt\for_hutt_proj\bin\Debug\for_hutt_proj.dll");    
      Type t = Type.GetType("for_hutt_proj.Class1,for_hutt_proj");    

     } 
    } 
} 

は、システムを使用して for_hutt_projクラスライブラリのコードです。 using System.Collections.Generic; using System.Text;

namespace for_hutt_proj 
{ 
    public class Class1 
    { 


      public int add(int a, int b) 
      { 
       int c = 0; 
       c = a + b; 
       return c; 

      } 
} 
} 

ここで、dllにはintを保持するaddメソッドがあります。 RightClickingでこのDLLを手動で追加し、ソリューションエクスプローラで参照を追加すると、 't'に適切なタイプがあります。それ以外の場合はnullです。 しかし、私は実行時にコードを使用し、UIではなく、私のプロジェクトへの参照としてこのdllを追加する必要があります。実行時にどうすればいいですか?

ありがとうございます。

+0

これを複製として閉じることをお勧めします... –

+0

答えの透明度は、通常、質問の明確さの関数です。正しい答えが得られない場合は、もう一度質問するのではなく、既存の質問を明確にしてください。 –

+0

あなたはアルナチャラム*とプラガシェシの両方ですか? –

答えて

0

私は解決策を得ました。 私が使用する場合は、以下のコードは正常に動作します。

タイプtype = asm.GetType( "for_hutt_proj.class1"、false、true);

クレジットはMarc Gravellです。

関連する問題