2017-04-13 13 views
-1

私はC#ソリューションを開発しています。ソリューションでプロジェクトをコンパイルし、アセンブリをロードし、そのタイプを調べる必要があります。アセンブリをロード/アンロードする方法は?

私の問題は、アセンブリを読み込んだ後にアンロードできないため、アセンブリを調べているプロジェクトを再コンパイルするには、VSを閉じて再度開く必要があるということです。私は、別のAppDomainでアセンブリをロードすることで問題は解決できるが、LoadFromメソッドがなくなり、依存関係を自動的に読み込むことに興味があることを読んだ。

私の質問は、どのようにアセンブリの依存関係を読み込み、型を調べてからアンロードするのですか?

+1

なぜあなたは 'LoadFrom'メソッドを失うのですか? – thehennyy

答えて

0

を使用することができますがはるかに強力であるhttps://github.com/0xd4d/dnlibをお勧めします。そこから、一時フォルダや開口部、それにアセンブリファイルをコピーします。そうすれば、元のアセンブリを開いたままにして再コンパイルしようとするときにエラーを投げることなく、私はそれを調べることができます。

時間のお手伝いをしてくれてありがとうございます。

2

何かを実行することなくそれを探索する必要がある場合は、Mono.Cecilのようなサードパーティを使用して、アセンブリとしてデータを読み取ることができます。

0

私はそれを醜い方法で解決することになったコンパイルまたは逆コンパイルまたはuはdnspy https://github.com/0xd4d/dnSpy

関連する問題