我知道可以Lua
使用LuaC编译代码,如下所述:
luac 是 Lua 编译器。它将用 Lua 编程语言编写的程序翻译成二进制文件,可以使用 C 中的 lua_dofile 或 Lua 中的 dofile 加载和执行。
问题是:我需要在.Net
(更具体地说是在C#
)中创建一个应用程序,它将接收多个“常规”*.lua 文件的输入,然后将它们全部编译为新文件。
loadfile
其次string.dump
是本质上做什么luac
。
我最终不得不从我的应用程序内部调用 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;