编译Lua代码并将字节码存储在新文件中

时间:2015-06-12 20:52:35

标签: c# lua luac

我知道可以使用LuaC编译Lua代码,如下所述:

  

luac是Lua编译器。它将用Lua编程语言编写的程序转换为二进制文件,可以使用C语言中的lua_dofile或Lua中的dofile加载和执行。

问题是:我需要在.Net(更具体地说是C#)中创建一个应用程序,该应用程序将接收多个'常规' * .lua文件,然后将所有文件编译为新文件。

2 个答案:

答案 0 :(得分:1)

loadfile后跟string.dump基本上完成了luac所做的事情。

答案 1 :(得分:0)

我最终不得不从我的应用程序中调用LuaC.exe。

我的解决方案正在执行以下操作:

string outFile = Path.GetDirectoryName(path) + "\\" + Path.GetFileNameWithoutExtension(path) + ".out";
System.Diagnostics.Process.Start(System.IO.Directory.GetCurrentDirectory() + "\\luac.exe", "-o \"" + outFile + "\" \"" + path + "\"");

path = outFile;