PowerShell和LuaInterface.dll

LuaInterface

这里有一个关于c#的例子

我是新手。正确的调用这个dll是怎样的? 我尝试过以下代码:

[System.Reflection.Assembly]::LoadFile("E:\\lua\\LuaInterface.dll")

$Lua = new-object LuaInterface.Lua # IntelliSense在这里看到lua类
$lua.DoString("local a=5")         # IntelliSense在这里看到所有方法

以及:

Add-Type -path "E:\lua\LuaInterface.dll"

[LuaInterface.Lua]::DoString("local a=5")

但都没有成功。请给我展示一个来自LuaInterface的"3+2"的例子。

PS中Lua类的方法无法看到。 在screenshot中,powershell可以看到luaDLL类的方法。但还需要一个更多的参数luastate

点赞
用户712649
用户712649

你非常接近,但是 :: 只用于 静态成员 访问。

我在32位控制台(PowerShell 5.1)中得到了以下工作代码:

# 加载 LuaInterface
Add-Type -Path path\to\luainterface.dll

# 创建 Lua 实例
$lua = [LuaInterface.Lua]::new()

# 设置全局变量值
$lua['a'] = 2
$lua['b'] = 3

# 返回 `a+b` 的结果
$lua.DoString("return a+b")
2020-04-06 18:50:23