我正在查看NLua来编写现有C#应用程序的脚本,其中从lua调用的C#函数可能会引发异常。
到目前为止,我发现了这个:
前者允许我获得一个debug.traceback(),一个lua级别的堆栈转储,但是我不知道异常的细节。后者提供了异常,但无法获得(我在.Source中获得了Lua文件和行,但这还不够)。
问题是:
任何帮助都将不胜感激。如果我能理清异常处理的话,NLua似乎非常适合我的想法。
发布于 2015-09-01 20:19:18
您需要使用脚本中的pcall。NLua将包装异常并返回由pcall返回的第二个值。
error, exception = pcall (someFunction)
if (not error) then
print(exception.Message)
endhttps://stackoverflow.com/questions/32296214
复制相似问题