LuaSocket dll 加载错误

我将我的项目(C++ VS2015 & lua 5.3)通过 luasocket 连接到 ZeroBrane IDE 的调试器,并且一切都按预期运行:

package.path = package.path .. ';./scripts/zerobrane/?.lua'
package.cpath = package.cpath .. ';./scripts/zerobrane/?.dll'

local debugger = require('mobdebug.mobdebug')
debugger.start()

所以,我可以运行和调试这个项目。

但是在我的另一个项目(C++ VS2013 & lua 5.1)中,我试图做完全相同的事情,但是出现了错误:

2016.05.17/17:33:39> lua_wrapper.cpp(47): Lua: error loading module 'socket.core'
        from file 'D:/project2/scripts/zerobrane/socket\core.dll':
    The specified module could not be found.

LUA Call stack:
.  C    <no name>
.  C    require
.  main  <no name> - ./scripts/zerobrane/socket.lua:12
.  C    require
.  main  <no name> - ./scripts/zerobrane/mobdebug\mobdebug.lua:101
.  C    require
.  main  <no name> - ./scripts/luadebug.lua:5
.  C    require
.  main  <no name> - ...\scripts\main.lua:6

_DLL 文件的路径是正确的。_我还尝试从 ZeroBraneStudio 包中将不同的 core.dll 放置在该文件夹中,但没有成功:

  • ZeroBraneStudio\bin\clibs\socket\core.dll
  • ZeroBraneStudio\bin\clibs52\socket\core.dll
  • ZeroBraneStudio\bin\clibs53\socket\core.dll

我本来想使用 VS2013 自己编译 core.dll,但我找不到相应的源代码。这个 http://files.luaforge.net/releases/luasocket/luasocket/luasocket-2.0-beta2 只生成 socket.dll(重命名为 core.dll 也没有效果)。

有什么想法吗?

点赞