2016-11-14 115 views
0

閱讀this,下載插座的64二進制和更換他們在LUA「clibs」目錄中,沒有陽性結果後,我想在解決以下錯誤一些幫助我是從日食接收:「socket.core」是不是有效的Win32應用程序

Exception in thread "main" com.naef.jnlua.LuaRuntimeException: error loading module 'socket.core' from file 'C:\Program Files (x86)\Lua\5.1\clibs\socket\core.dll': 
    %1 is not a valid Win32 application. 

    at com.naef.jnlua.LuaState.lua_pcall(Native Method) 
    at com.naef.jnlua.LuaState.call(LuaState.java:555) 
    at org.eclipse.ldt.support.lua51.internal.interpreter.JNLua51Launcher.run(JNLua51Launcher.java:128) 
    at org.eclipse.ldt.support.lua51.internal.interpreter.JNLua51Launcher.main(JNLua51Launcher.java:143) 

這是我enviorioment:

  • 視窗10 64;
  • Lua 5.3;
  • LUA_PATH定義正確;
  • LUA_CPATH定義正確;

這裏是我的代碼:

-- Requires 
local socket = require 'socket' 

-- Settings 
host = "localhost" 
port = 8384; 

-- Program Start 
print("Program Start") 

-- Functions 

local function main() 

client = socket.connect(host, port) 
client:send("test!") 
while true do 
    s, status, partial = client:receive(1024) 
    print(s or partial) 
    if status == "closed" then 
    break 
    end 
end 
client:close() 

end 

main() 

回答

0

從你的Lua安裝(C:\Program Files (x86)\Lua\5.1\clibs\socket\core.dll)的文件路徑,它看起來像你已經安裝的Lua的32位版本,並試圖加載與它的64位DLL。這不行;這兩種體系結構不能混合在一個過程中。

可以下載32位版本的套接字模塊或64位版本的Lua解釋器。

+0

剛剛從這裏下載:http://files.luaforge.net/releases/luasocket/luasocket/luasocket-2.0.2這裏:http://luabinaries.sourceforge.net/download.html替換所有的文件,將所有內容都留在32位,結果相同 –

相關問題