将lua脚本包含到可执行文件中。

嗨,这个问题似乎已经得到了回答,但是答案并没有解决我的问题。 我尝试通过将lua脚本复制到可执行文件中来包含它

复制-b a.exe + test.lua输出.exe

但是当我启动output.exe时,luaL_dofile()无法找到lua脚本。 我不想使用任何第三方应用程序来实现这一点。

复制文件似乎有效,因为Love2D项目也是这样复制文件,但是我将它们视为zip存档(为了文件层次结构)。

点赞
用户107090
用户107090

你可以将 Lua 脚本附加到你的 .exe 文件中,但你需要一些方法将它加载到你的程序中。主要问题在于如何在 .exe 文件的末尾找到 Lua 脚本。srlua 会附加一个包含 Lua 脚本大小的小签名,使得程序可以在正确的偏移量读取脚本。幸运的是,Lua API 提供了一个函数可以从任意源加载脚本。方便函数 luaL_dofile 就是使用该函数实现的。你可以在自己的程序中使用相同的技术。

你可以将 Lua 脚本附加到你的 .exe 文件中,但你需要一些方法将它加载到你的程序中。主要问题在于如何在 .exe 文件的末尾找到 Lua 脚本。[srlua](http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/#srlua) 会附加一个包含 Lua 脚本大小的小签名,使得程序可以在正确的偏移量读取脚本。幸运的是,Lua API 提供了一个函数可以从任意源加载脚本。方便函数 `luaL_dofile` 就是使用该函数实现的。你可以在自己的程序中使用相同的技术。
2015-09-18 20:47:25