2011-12-15 17 views
1

はじめに:私はC#については基本的に何も分かりません。 プロジェクトにDLLを追加しました。ビルドエラーはありませんが、実行しようとすると、DLLが見つからないというエラーが表示されます。私も出力ディレクトリにコピーしようとしました。無駄に。C#:DLL参照の追加

何が起こっている可能性がありますか?

固有のエラー:

System.IO.FileNotFoundException was unhandled Message=Could not load file or assembly 'controllib_clr.dll' or one of its dependencies. The specified module could not be found. Source=controllib_demo_cs...

必要であれば、私はより多くの情報を追加させていただきます。 :)私はちょうど私の(非常に)限られた知識を与えられたらどんな情報が有益だろうか分からない。

+0

あなたのコードの中にこれらのライブラリを「使用していますか? – tmjam

+0

です。関数がdllのクラスを使用する前に呼び出されています。 –

+0

ソリューションエクスプローラでプロジェクト名を右クリックし、[参照の追加]をクリックして参照(または他の同様の方法)するか、単に.dllをコピーしてプロジェクトにアセンブリを追加しましたかあなたのフォルダ構造ですか? – JOpuckman

答えて

3
+1

私の限られたメモリでは、私はエラーが少し異なっていると思った...しかし、依存関係を見て常に良いアイデアです。 –

+0

完全にはわかりませんが、MSVCR90.dllとIESHIMS.dllの2つの黄色の疑問符がウィンドウの一番下のリストにあります。何を言ってるの? –

+0

これは私にとって初めての検索です。MSVCR90.dllはVisual StudioのDLLの1つで、IESHIMS.dllはInternet Explorerに関連しています。 –

0

出力フォルダに存在する場合は、の依存関係が存在しない可能性があります。これを修正するには、依存関係をプロジェクトの参照として追加します。

出力に存在しない場合は、参照のプロパティに[ローカルコピー]が設定されていることを確認してください。

+0

さて、出力フォルダにはコピーされていませんし、私の出力は今は 'bin'ではなく 'obj'フォルダです。だから私は、プログラムが完全にコンパイルされていないと仮定しています。 –

+0

出力ウィンドウを見ると何か面白いことがありますか? –

+0

面白そうに見えません...:/ –

0

が欠落しているかを把握するためにDependencyWalkerを使用するいくつかの依存関係のDLLをロード/見つけることができないようですが、それは管理(.NET)または管理されていない(ネイティブ)DLLですか?見えますか私は管理されていないと仮定しています。

FileNotFoundExceptionは、依存関係がない場合に一般にスローされます。ロードするDLLには、ロード時に必要な数の他のDLLが必要な場合があります。ほとんどの場合、どのファイルが必要かはわかりません。そのDLLのドキュメントを参照する必要があります。

+0

どのようなアセンブリであるかをどのようにして知ることができますか? –

関連する問題