无法加载lua dll模块

问题描述 投票:1回答:1

我无法加载lua模块,它是32位c ++ dll。lua模块和lua代码在同一文件夹中。

使用C ++代码:

extern "C" __declspec(dllexport) int luaopen_luartmidi(lua_State *L) {
    ...
}

lua第一行:

local luartmidi = require 'luartmidi'

当我用vs code lua 32bit调试器运行lua代码时,我得到了错误消息:

发生异常:[C]:-1:从文件中加载模块...时出错...

找不到指定的功能

[Dependency Walker说LUA.DLL丢失。当我在同一文件夹中复制lua.dll时出现错误

c:Users / xyz / .vscode / extensions / actboy168.lua-debug-1.23.1 / runtime / win32 / lua53 / lua.exe:多个Lua虚拟机已检测到]]

我无法加载lua模块,它是32位c ++ dll。 lua模块和lua代码在同一文件夹中。在C ++代码中:extern“ C” __declspec(dllexport)int luaopen_luartmidi(lua_State * L){.....

windows lua dllexport
1个回答
0
投票

当您静态链接lua解释器,然后尝试加载链接到Lua DLL的外部模块(并且期望存在lua.dll或类似名称的库)时,会发生这种情况。您不能同时具有静态编译的解释器和从DLL加载的一个解释器,以使其出现在同一进程中(通过对此条件进行检查会触发“检测到多个Lua VM”消息)。

© www.soinside.com 2019 - 2024. All rights reserved.