我正在处理lua混淆器,如果没有参数,我希望它能够从文件中的模糊代码中切换,或者混淆lua cli中的字符串参数。如果这完全没有意义的话,这就是我的意思。
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
问题是,在转储中,它实际上不是参数,而是变量。那么,
We have a problem in our project,we use lua 5.1 as our scripting language.
但是当在一个函数中使用lua_pushnumber将太多的数据从C++传递给lua时,lua堆栈看起来像是堆栈溢出,导致C++中的其他内存部分已经被写入,当回调返回到C++时,它会导致系统崩溃。我想知道是否有一些参数来控制lua堆栈的大小。我尝试更改在lua.h中定义的参数LUA_MINSTACK,但它似乎不起作用。我还尝试使用lua_checkstack()来避免将太多数字推送到lua堆栈,但它也不起作用
getNineScreenEntity
在python中,您可以执行help(str)在解释器中读取相应的内置文档。如果我在lua解释器中使用相同的方法:
> help(str)
stdin:1: attempt to call global 'help' (a nil value)
stack traceback:
stdin:1: in main chunk
[C]: in ?
我怎样才能读到内置的lua文档?
我正在使用Node.js和'redis-scripto‘模块,我试图在Lua中定义一个函数:
var redis = require("redis");
var redisClient = redis.createClient("6379","127.0.0.1");
var Scripto = require('redis-scripto');
var scriptManager = new Scripto(redisClient);
var scripts = {'add_script
我下载了mysql-async,essentialmode,esplugin_mysql,es_admin2,async,它显示了这个错误。 是关于什么的?请帮助我,我正在尝试创建我的服务器。 [ERROR] connect ETIMEDOUT
Connecting: kworthbati
Sending heartbeat to live-internal.fivem.net:30110
[ERROR] [MySQL] [esplugin_mysql] An error happens on MySQL for query
"SELECT
我对Lua很陌生。我使用将一个JS文件编译为Lua5.2
castl -o script.js
这创建了一个名为script.js.lua.的文件这是我的新lua文件的第一行:
local _ENV = require("castl.runtime");
我试着用lua52 script.js.lua运行该文件,但是我得到了以下错误:
C:\Program Files\lua-5.2.4_Win64_bin\lua52.exe: script.js.lua:1: module 'castl.runtime' not found:
no field
基本上有另一个fivem es_extended问题,我得到了不受欢迎的错误,每次用户尝试加入我的服务器,并显示他们的钱未定义,也不允许他们保存他们的衣服。 我已经从我的数据库中删除了表,并重新添加了它们,但没有用。 stack traceback:
@es_extended/server/main.lua:155: in upvalue 'ref'
citizen:/scripting/lua/scheduler.lua:391: in function <citizen:/scripting/lua/scheduler.lua:390
我有一个Lua函数,它返回一个字典表,其中一个放入返回表的值是另一个表,如下面的Lua函数所示。
function tableWithinTable()
local ret = {}
ret["a"] = 1
ret["b"] = {1,2,3}
ret["c"] = 3
return ret
end
我该如何访问内部表呢?
我知道我可以到达该表,因为我可以输入以下if语句。也包括了我当前读取表格的尝试。
lua_pushstring("b");
lua_gettable(lua,1);
i
我使用"lua.vm.js“在web客户端使用lua进行开发。
我想知道如何从js脚本调用Lua函数。
var element = document.getElementById("myBtn")
element.addEventListener("click", function(){ /*call here Lua function*/ });
在从C++调用Lua函数时,我遇到了奇怪的问题。我在卢阿:
Player =
{
Number = 0.43,
Text = "SomeText",
}
function Player:Func(a, b)
return (a * b);
end
在lua_pcall之前,我的堆栈看起来:
表格
函数
3.
4.
我称这一职能为:
lua_pcall(L, 2, 1, 0)
我从Lua那里得到了错误:
试图对局部'b‘(一个零值)执行算术
当我更改Lua脚本时
return (a * b);
至
return a;
没有错误,但来自lu
从这篇文章中,我学会了如何在C++中重新定义Lua的print()。()
下面是重新定义的print函数,它将变量打印到我的主机程序的控制台。(通过名为post..的函数)
int l_my_print(lua_State *L)
{
int nargs = lua_gettop(L);
for (int i = 1; i <= nargs; ++i)
{
if (lua_isnil(L, i))
poststring("nil");
else if (lua_isboolean(L, i))
我在C中的服务器上工作,动态地动态生成Lua命令并通过套接字将它们发送到客户端。现在服务器正在使用纯文本,但我希望服务器在将脚本发送到客户端之前预先编译它。
我检查了luac.c,但是找不到如何做这样的事情:
char lua_commands[ 1024 ] = { "a = 123; b = 456; c = a + b;" };
int socket
unsigned int send_buffer_size
unsigned char *send_buffer
/* Compile lua_commands and store the binary script
我对lua并不熟悉,只是找不到这个看似非常简单的问题的答案。
我想打印一些张量,这些张量对应于Word2Vec样式中的字嵌入。每一行都应该以一个单词开始,后面跟着张量元素。我有以下代码:
function Word2Vec:print_semantic_space()
if self.word_vecs_norm == nil then
self.word_vecs_norm = self:normalize(self.word_vecs.weight:double())
end
for word,_ in pairs(self.vocab) do
我正在尝试构建一个windows服务,其中包含一个Lua组件,并链接到Lua的共享库。我使用MinGW在Eclipse/CDT中构建代码。它构建得很好,但是当我运行它时,我得到了"Application failed to Initialize Properly (0x80000003). Click OK to terminate“。
我正在寻找可能发生的事情的线索。Hello World程序可以很好地编译和运行,因此没有基本的环境问题(我希望如此!)。顺便说一句,我在XP Home上运行。
更新:
好吧,通过一些猜测,我已经弄清楚了发生了什么,并认为我把这篇文章发布给其他可能遇到类
我在MonoDevelop中使用SharpLua。我在Lua端创建了一个类,它应该可以在C#中使用。这很好用,我可以访问Lua中的所有字段。这很简单。
public class Test {
public string Name;
}
可能是从Lua访问的
print(test.Name)
现在,我想通过Lua创建新的字段。在Lua中,它应该看起来像
test.abc = "A string"
print(test.abc)
但这并不管用。我在ObjectTranslator中得到一个错误。所以我不能从Lua扩展表格。我不想从C#访问这个新条目。应该只有可能创建它们。
有没
我有一个小的Lua脚本要在Redis中运行,我对获取执行时间很感兴趣。
由于Redis及其Lua实现的性质,我不能在脚本的开始/返回点使用时间函数,也不能将此信息包含在用于处理的返回中(请参阅作为纯函数的脚本)。这将导致一个错误:(error) ERR Error running script (call to f_a49ed2fea72f1f529843d6024d1515e76e69bcbd): Write commands not allowed after non deterministic commands
我到处寻找一个函数/调用,它将返回上一次运行脚本的执行时间,但还没有找到任何
我有一个想要在touch_input.lua中调用另一个函数的block_basic.lua
block_basic.lua执行以下操作:
local screen_touch = require( "touch_input")
local onScreenTouch = screen_touch.onScreenTouch
local function touched( event )
-- 'self' parameter exists via the ':' in function definition
print(onScreenTo