问题标签 [luainterface]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
events - 断开 Lua 中的事件
我正在阅读 LuaInterface Tutorial (here)的一部分,发现您可以通过执行类似的操作将事件与函数关联:
现在,考虑到这一点,有人知道我将如何删除事件处理程序吗?假设我只想断开上面的连接。我该怎么做?
c# - C#中的Lua接口
我是 C# 的完全“菜鸟”,但是我确实知道一些 C,虽然这是一个好的开始,但这还不够。我已经下载了最新版本的 LuaInterface,下载内容包括两个文件:lua51.dll 和 LuaInterface.dll。我无法弄清楚如何在我的 C# 项目中使用它,并且能够在其中运行 Lua。如果有人可以提供帮助,那就太好了。如果可以,请不要使用非常复杂的解释。谢谢!
c# - Luainterface 5.1 获取脚本的所有使用的全局变量
反正有没有得到所有使用过的全局名称的列表?
一种方法是不加载任何全局变量,然后执行脚本。让它崩溃并解析名称的异常......非常难看......
c# - 用c#读取Lua文件
我已经在我的 Visual Studio 2008 c# 项目中成功引用了 luainterface。
这是我的代码:
我得到的输出是:
我的数据如下所示:
我想为我的 lua 文件中的每个变量返回值:id、rel、rs108 ....
我究竟做错了什么?
更新 这几乎可以工作:
它正在通过正确的键值,但我不需要查看每个键中的值。我该怎么做呢?
c# - 使用 Lua 中基于标志的 .NET 枚举
我正在使用 LuaInterface for .NET 创建 Windows 窗体对象。这很好用,除了一件事:
我想使用 的Anchor
属性Control
使它们自动调整大小。如果我只设置一个 Anchors(例如 only AnchorStyles.Top
),它可以工作,但这并没有真正的意义。我必须设置多个 Anchor,这是通过将它们与“按位或”组合(或仅以数字方式添加它们)来完成的。
在 VB.Net 中,两者都有效:
在 Lua 中,这确实有效:
...但是这条附加线没有:
它给了我以下错误:
这在某种意义上是正确的,因为“LuaInterface 将枚举值视为相应枚举类型的字段”(LuaInterface 说:使用 Lua 编写 .NET CLR 脚本)。
也不能将值分配为数字:
这一次,错误消息相当不具体:
我该如何解决这个问题?
是否有可能将数字类型转换为Lua中的正确枚举类型?
c# - 如何从 C# 调用具有“要求”的 Lua 脚本中的 Lua 函数?
我有一个使用 LuaInterface 执行 Lua 脚本的 C# 程序。到目前为止,它运行良好,除非我的 Lua 脚本需要特定的包,如 LuaXML。
我想将 XML 字符串从 C# 发送到 Lua 函数。
这是保存在 C:\temp 中的 XML:
这是 C# 代码:
这是 Lua 脚本,保存在 C\temp 上:
这是我得到的错误:
我是否必须将所有这些文件(.lua、.dll)手动放到所有这些位置?
当我从 Lua 控制台执行 Lua 脚本时,它可以工作。它返回 10,即第一本书的id。
此外,如前所述,只要脚本中没有“require”,我就可以从 C# 调用 Lua 函数。引发这种异常的不仅是 LuaXML。任何包裹都可以。
我玩过环境变量,但没有成功。但是,我不是很擅长。
预先感谢您的帮助。
c# - LuaInterface:访问对象属性
我正在使用 LuaInterface 为我希望在 Lua 中可用的一些对象注册一个 getter。例如:
我的 Lua 文件:
在 Lua 中返回公共对象属性后,我该如何访问它们?这甚至可能还是我必须为每个对象属性编写getter?
c# - 文件名 > 60 个字符时忽略断点
我的 lua 源文件的文件名 > 60 个字符(带有必要的非绝对路径)当调试器运行时,LuaDebugger.cs 执行断点检查:
GetBreakpoint 调用 GetFile() 但它总是返回 null 因为
失败
(shortsrc 由 定义 [System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst = 60/*LUA_IDSIZE*/)]
)
如果我使用filename = luaDebug.source.toString().Substring(1)
它,但我不想更改 luainterface-debugger 源代码。
c# - 将 C# 集合传回 Lua
我有一个用 C# 编写的 DLL,供 Lua 脚本使用。脚本“需要 CLRPackage”。到目前为止,我可以通过load_assembly()和import_type()来获取我的 DLL 中的类和方法。我正在传回简单的值和字符串,这一切都有效。
不,我需要将通用集合传递回 Lua。我相信 Lua 会看到一个表,但我不清楚如何在 C# 中创建该表并将其传回。
这似乎是一个类似的问题,但我没有看到如何实现它。是否有另一种解决方案或带有精简代码片段的解决方案?
macos - 是否可以在 Mono/Mac OS 中使用 LuaInterface?
LuaInterface 使用两个 .dll:lua51和luanet。
虽然能够将 lua51 重建为 liblua5.1.dylib (并且代码实际上找到了所有必要的入口点),但我完全被luanet.dll困住了。
有谁知道如何在 Mac OS 上构建它,或者我是否必须完全避免使用它(以丢失 ObjectTranslator 和 MetaFunctions 之类的东西为代价)?
我已经知道有像http://github.com/jsimmons/LuaSharp这样的替代品。