覆盖函数但仍然得到修改后的信息

有没有办法覆盖一个函数,但仍然得到以下结果的结果:

debug.getinfo(pairs).linedefined == -1 ?

我想覆盖一个函数,但仍然可以绕过debug.getinfo的检查 否则我可以覆盖debug.getinfo吗?

点赞
用户3979429
用户3979429

技术上,你可以在一个查找表中存储对旧函数的引用,然后包装getinfo函数,在调用自身之前检查这个表。这样可以有效地完成你尝试做的事情。

但我必须强调,如果你正在沙盒化或以任何方式限制用户,禁用调试库是必要的。是的,你可以对他们进行沙盒化,但我认为这和对字节码进行loadstring沙盒化一样困难(顺便说一下,你也应该禁用它)。

我不会给你一个代码示例,因为这是极不鼓励的。我希望你能找到另一个选择。

2016-02-16 07:30:10