首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如果有来自lua cli的参数,如何从参数中string.dump字符串,如果没有参数,则如何转储文件中的代码

如果有来自lua cli的参数,如何从参数中string.dump字符串,如果没有参数,则如何转储文件中的代码
EN

Stack Overflow用户
提问于 2022-11-18 14:45:38
回答 1查看 33关注 0票数 -2

我正在处理lua混淆器,如果没有参数,我希望它能够从文件中的模糊代码中切换,或者混淆lua cli中的字符串参数。如果这完全没有意义的话,这就是我的意思。

代码语言:javascript
运行
复制
local Code = function()
    print("test")
end

Dumped = string.dump(Code)

if arg[1] then
    local function Temp()
        loadstring(arg[1])()
    end
    Dumped = string.dump(Temp)
end

问题是,在转储中,它实际上不是参数,而是变量。那么,我是如何绕过这个问题并将我的字符串更改为代码的呢?如果我说不通的话我很抱歉。

这是我尝试过的,问题是:

代码语言:javascript
运行
复制
local Code = function()
    print("test")
end

Dumped = string.dump(Code)

if arg[1] then
    local function Temp()
        loadstring(arg[1])()
    end
    Dumped = string.dump(Temp)
end

print(Dumped)

-- Say if we did lua file.lua print("hello world")
-- Expected result: LuaQ print hello world (with a bunch of whitespace in between)
-- Actual result: LuaQ arg[1] (also with a bunch of whitespace in between)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-18 14:57:38

现在,您正在转储一个加载字符串并运行它的函数。因此,您将得到加载字符串并运行它的代码的转储。没什么好惊讶的。

如果您想转储其他代码,则需要实际转储该代码:

代码语言:javascript
运行
复制
local code, codeError = loadstring(arg[1])
if code == nil then
    print("Error:",codeError)
else
    Dumped = string.dump(code)
end
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74491397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档