2012-02-29 10 views
1

プログラムを実行しようとすると、FileNotFoundExceptionが受信されますが、howerver dllは同じフォルダに存在します。それはどのようにして問題を解決するのですか?dllをロードするときにFileNotFoundExceptionが発生する

C:\Oleg\bin\fast>FAST.exe 

Exception: System.IO.FileNotFoundException: Can't load "QuickFASTDotNet.dll" 
or dependent component. Can't find this file. 
in FAST.FAST..ctor() 
in FAST.Program.Main(String[] args) in C:\Oleg\fast\FAST\FAST\ 
Program.cs:line 474 

C:\Oleg\bin\fast>dir QuickFASTDotNet.dll 
    16.02.2012 16:45   117 760 QuickFASTDotNet.dll 

同じバイナリは私のWindows 7マシン上で動作します(ただし、別のWindows Server 2008 R2 Foundationのマシン上では動作しません):以下の出力は、ロシアのWindows Server 2008 R2 Foundationののローカライズされたメッセージから翻訳します。

+0

を参照してください。dllファイルをクリックし、[セキュリティ]タブ

から "ブロックを解除する" ボタンをクリックしてください:\オレグ\速い\ FAST \ FAST \'? – sll

+0

コンパイルされた実行可能ファイルの出力パスとは何ですか? .dllもそのディレクトリに出力されますか? – PinnyM

+0

'QuickFASTDotNet.dll'によって参照されるアセンブリは何ですか?それらもそこにありますか? – sebagomez

答えて

2

Debugging Assembly Loading Failuresをご覧ください。

ほとんどの理由は、関連するファイルがサーバーマシン上のGACにインストールされていないか、x86/x64が一致していないことが考えられます。

+0

私はFusionログを取得したいので問題を解決するためにMicrosoft SDKをインストールしました。 Microsoft SDKをインストールするだけで問題が解決され、アプリケーションが起動します。 – javapowered

0

おそらく、QuickFastDotNet.dllは別のライブラリの一部の関数を呼び出し、これらのライブラリは見つかりませんでした。 dllexpを使用して確認することができます。

関連する問題