【发布时间】:2010-11-15 14:38:24
【问题描述】:
我想知道是否有人对集成 Lua 和 VB6 有任何提示。我正在运行一个小型在线 RPG,添加一些脚本会很棒。
【问题讨论】:
我想知道是否有人对集成 Lua 和 VB6 有任何提示。我正在运行一个小型在线 RPG,添加一些脚本会很棒。
【问题讨论】:
嗯,这是可行的。我曾经为 Lua 5.0.2 做过,但我找不到文件。在您拥有的选项中,您可以:
将 Lua 包装在 COM dll 中,公开 Lua API,因此在 VB 中您可以添加对它的引用。
使用 __stdcall 调用约定构建您的自定义 Lua 版本,因此您可以在 VB 中使用 Declare 导入所需的 Lua 函数。编写类型库将大大简化与 VB 的集成(主要是为您完成从 C 字符串到 VB 字符串的转换)。
构建一个包装 DLL,它复制 Lua 的接口但使用 __stdcall,添加使用宏定义的函数等。
我记得使用自定义构建的 Lua,我可以将 VB 函数(在模块中定义)注册到 Lua 中并从脚本中调用它们。我不记得我是否曾经让它调用成员函数。
我希望这能让你开始。
【讨论】:
使用LuaInterface。它是一个允许您使用 lua 的 .NET 库。但是,它本身并没有附带文档,请查看 this 以获取一些有用的指南。
基本上,您将 DLL 添加到您的项目并使用语句引用/添加它,然后创建一个新的 Lua 对象。从那里,您可以像访问数组一样访问它以提取变量,并且有调用 lua 函数和操作表的方法。
【讨论】: