2

lua 5.1 コンパイラをカプセル化する DLL (できれば .net) を知っている人はいますか? 一部で lua スクリプトをコンパイルする必要がある .net プロジェクトに取り組んでいます。スクリプトを一時ファイルに送信して luac.exe を実行する代わりに、スクリプト コードを送信できる DLL が必要です。

編集:標準のluaバイトコードを出力するような方法でluacを実装する.NETライブラリが必要です(CLRにコンパイルするluaライブラリではありません)。lua c ソース コードのコンパイルが機能しませんでした。ac# プロジェクトに dll への参照を含めようとしたときに、Visual Studio が有効なアセンブリではないと不平を言いました。これまでの検索では何も見つかりませんでした。

4

3 に答える 3

1

Luaと.Netを統合するためのLua.NETプロジェクトがあります。

http://www.lua.inf.puc-rio.br/projects/luanet/

于 2008-10-30T21:52:51.750 に答える
1

luacのすべてのコードはluaとともに配布されます...それをDLLにするのは簡単です。

于 2008-10-30T20:00:11.133 に答える
1

lua-users wikiluacから取得した次のコマンドを使用して、Lua でエミュレートできます。

lua -e 'io.write(string.dump(assert(loadfile())))' <sample.lua >sample.out

したがって、C の API レベルでそれを行う場合 (.NET を使用していることはわかっていますが)、次のようになります。

lua_dostring(L, "string.dump(assert(loadstring([==[YOUR CODE HERE]==])))");
size_t sz;
char *output = lua_tolstring(L, -1, &sz);

そして、sz文字を出力ファイルに保存するだけです。

これは少し遅い答えだと思いますが、ここにはまだ答えがなかったので、試してみることにしました.

于 2009-09-21T21:04:52.933 に答える