0

尝试在 VB.NET 中使用 Lua 有一个严重的并发症。我的问题是如何让这个库正确加载,以便它真正可用。

这是我的尝试。

  1. 我通过 NuGet 尝试了几种 Lua 库的变体。经过一番研究,我发现了 LuaInterface(在 NuGet 中不可用,官方 repo 引用 NLua作为它的继承者)。

  2. 开始了一个新项目,仅引用 NuGet 中的 NLua。-- 失败

  3. 从 NuGet 添加了对 Lua 的引用——仍然失败
  4. 开始了一个新项目,并直接从github下载了当前二进制文件用于 NLua --- 失败。

在上述所有情况下,我检查了构建文件夹以确保所有 DLL 都存在(因为 Visual Studio 仍然不会一直部署所有 dll - 请参阅 SQLite 库作为示例)。

我现在的错误是这个

在 KeraLua.dll 中发生了“System.DllNotFoundException”类型的第一次机会异常

现在,当我明确声明对该文件的引用时,就会出现大问题,因为它会产生冲突,因为 KeraLua.dll 和 NLua.dll 都有一个具有相同参数的“Lua”方法。

我在崩溃时使用的代码非常简单

Imports NLua

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim l As New Lua


    End Sub
End Class

如果有人能解释为什么这个库如此失败或者我可能做错了什么,那将不胜感激。我目前正在尝试使用此库在 .net 环境中公开用 Lua 编写的表。我在这里看到了关于这个的例子,它们已经过时了,因为它们引用了已弃用的 LuaInterface 对象。

4

0 回答 0