gpt4 book ai didi

c# - 处理 LuaInterface 中的语法错误

转载 作者:行者123 更新时间:2023-12-03 08:15:01 25 4
gpt4 key购买 nike

我正在尝试使用 LuaInterface 将 Lua 脚本接口(interface)集成到我的 C# 项目中。 .

如果我执行语法正确的代码,它会按预期工作,但是一旦在脚本中引入语法错误(或任何其他错误),SEHException在没有任何关于错误的信息的情况下被抛出。

触发行为的简单示例:new LuaInterface.Lua().DoString("die");
当然,这完全抵消了 Lua 的错误处理机制,对我来说是一个阻碍。

显然这是一个 known bug自 2011 年开放。

是否有任何解决方法,没有此错误的 LuaInterface 版本,或者是否有替代的 lua 包装器可以正确处理错误?

最佳答案

DoString 遇到的 Lua 错误(语法或运行时错误)应该导致 LuaException被抛出。它的消息将包含 Lua 生成的错误字符串。例如,给定您的示例:

try
{
new LuaInterface.Lua().DoString("die");
}
catch (LuaException ex)
{
Console.WriteLine(ex.Message);
}

您应该收到以下错误:
[string "chunk"]:1: '=' expected near '<eof>'

您没有为您的一个类轮显示任何上下文。它是否包含在 try-catch block 中?

如果是这样,也许是 a bug ?

关于c# - 处理 LuaInterface 中的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13635199/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com