0

.NET 4.0 アプリケーションで Lua システムを動作させようとしています。.NET 4.0 でコンパイルされた Lua のラッパーとして LuaInterface を使用しています。

VS2010 がインストールされている開発用コンピューターで Lua スクリプトを実行すると、アプリケーションは問題なく動作します。しかし、別のコンピューターで実行すると、FileNotFoundException が発生します。

System.IO.FileNotFoundException: Could not load file or assembly 'lua51.dll' or one of its dependencies. The specified module could not be found.

lua51.dll はアプリケーションと同じフォルダにあるので問題ありません。つまり、lua51.dll が依存するファイルが見つからないということです。そして、これが問題です。

これを正しく機能させるには、ユーザーにどのファイルをインストールしてもらう必要がありますか?

4

3 に答える 3

0

これは、Fusion Binding のログを使用して分析できます。これは、コマンド ラインで実行したり、ファイルに記録したり、GUI インターフェイス (FUSLOGVW.exe) を介して表示したりできます。ここから始めて、開始できるかどうかを確認してください。

于 2011-10-19T07:08:34.163 に答える
0

私も同じ問題を抱えていました。

Microsoft から vcredist_x86.exe (Visual C++ 2010 Redistributable Package) をインストールすることで解決しました。これにより、必要な DLL がシステムに追加されます。

/MT オプションを指定して lua51.dll をコンパイルしようとしましたが、このオプションは必要な /CLR オプションと互換性がありません。次に、再配布パッケージ 2008 (LuaInterface サイトが言うように) をインストールしようとしましたが、動作しませんでした (おそらく、VS 2010 で自分で lua をコンパイルしました。これ以上はわかりません)。2010年版は私の問題を解決しました。

于 2012-10-22T11:18:00.783 に答える