C♯相談室 Part2
■ このスレッドは過去ログ倉庫に格納されています
0465デフォルトの名無しさん
NGNG> どうやら 自分のアセンブリ名 と ベースとなる DLL のアセンブリ名 が同じ場合,
> このようなエラーがエラーが発生するようです。
アセンブリ名を勘違いしているな。アセンブリ名=ファイル名ではない。
例外を見てみ。
>>>未処理の例外 : System.TypeLoadException: アセンブリ 'lib, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' から型'Lib' を読み込めません。
ってなってるっしょ。この場合のアセンブリ名ってのは、
'lib, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'
これなの。だからファイル名が同じとか違うとか関係ないんだよね。
DLLのほうのソースに、
using System.Reflection;
[assembly:AssemblyVersion("1.0.0.0"),AssemblyCulture("ja-JP")]
こんなの追加して、DLLとEXEをリコンパイルしてみ。んで、DLLは
./ja-JP/xxx.dllにおく。そうすれば、ファイルの拡張子より上が同じでも
ロードできるよ。これはアセンブリ名が変わるからだ。ファイル名は同じでもね。
■ このスレッドは過去ログ倉庫に格納されています