2010-11-30 18 views
1

プロジェクトでは、オブジェクト設定に基づいて.dllを動的にロードします。 ILMerge以前は、これはうまくいきました。 ILMergeを使用して1つの.dllを作成しましたが、ロードは失敗します。 .dllをILMergedの後にどのように動的にロードしますか?私たちはVS2008とC#を使用しています。ILMergeの後のDLLの動的ロード

のDLL:Common.dll、CommonMedical.dll

NEW DLL:DMCommon.dll

の.dllをロードするために失敗し、現在のコード:
ASM = Assembly.LoadFrom( "CommonMedical.dll" );

私は間違っていますか?私も.Loadを試しましたが、ILMergingなしで動作するため、ネームスペースに問題はありません。事前のおかげで、

クレイグ

+0

重複しているhttp://stackoverflow.com/questions/3394325? – marr75

+0

エラーの詳細はどうなりますか? –

+0

[.NET Reflectionでクラスをインスタンス化できません。 ILMergeと統合](http://stackoverflow.com/questions/3394325/unable-to-instantiate-the-class-through-net-reflection-merged-with-ilmerge) –

答えて

1

明白な答えは、にあなたのコードを変更:ASM = Assembly.LoadFrom( "DMCommon.dll");

新しい結合されたアセンブリファイルを作成しましたが、ファイル名を使用してロードするLoadFromを使用しています。

+0

は私の側で混乱している必要があります...あなたは答えとして.LoadFromを使用すると言いますが、私のエラーはファイル名を使用してロードするLoadFromを使用していると言います。ご清聴ください - ありがとう! – cbuck12000

+0

Preet Sanghaは元の投稿に2番目の文を追加しました。 LoadFrom APIは、名前空間ではなくドライブ上のアセンブリの名前をとります。そのため、結合されたアセンブリの新しい名前を使用する必要があります。 –

+0

うわー、それはポストで混乱していました。私はあなたが提案したものを試しました、そして、私はまだアセンブリを見つけていないというエラーを受けます。 – cbuck12000

関連する問題