从string.dump返回值中移除源块
2015-9-1 15:5:1
收藏:0
阅读:115
评论:2
我正在尝试制作一个闭源的 lua 文件,为此,我冒险做出这种决定,即没有正常思维的人会花费很长时间来转换(它是某种汇编形式)string.dump 返回的代码。
然而,string.dump 也返回了一个包含完整源代码的代码块。无论我做什么,都似乎无法制作自动化的源代码删除器,删除返回字符串中的源代码-它似乎没有按原样传递,我不知道它是否会删除我的缩进,换行符,空格,或者在某些条件下会删除某些内容。
所以基本上就是说; 假设我有
local a = string.dump(function() print("Hello world") end)
a 将是这样的:
LuaQ(源)(我想保留的使其工作的内容)
但我想删除源代码,但是即使我传入完全相同的源代码进行查找,string.find 也找不到它。
如果我有任何不清楚的地方,请说一声。
原文链接 https://stackoverflow.com/questions/7045478
点赞
stackoverflow用户107090
在执行 a=string.dump(function() print("Hello world") end)
之后,a
并不包括 函数的源代码。尽管如此,它确实包含函数中的字符串。不过,你可能正在使用 loadstring
,默认情况下它会将完整的字符串作为块的名称添加。尝试使用 loadstring(source,"=")
。
2011-08-13 01:16:31
评论区的留言会收到邮件通知哦~
推荐文章
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
- 如何编写 Lua 模式将字符串(嵌套数组)转换为真正的数组?
请看 LuaC 的源代码。我认为您看到的只是调试信息,而 LuaC 有选择地将调试信息从生成的字节码中删除的选项。您可以看看它是如何做到的。
话虽如此,在您的程序的字节码中,字符串字面值始终会可见,因为 Lua 将它们作为纯文本存储在字节码中。