我有一个关于Lua和https的问题。 我正在开发一些支持Lua的路由器软件。 坏事是这个路由器不支持debugging。 所以我正在为Lua寻找一个IDE。
我在Win 7 64位操作系统上使用Lua开发工具和LuaForWindows。 直到现在,一切工作就像它应该。 但现在我必须通过https调用一些URL。 路由器本身有一个包ssl.lua,你可以使用require ("ssl.https")
语句来使用这个包。 但我想用Lua开发工具进行debugging。 我正在寻找Windows兼容的软件包,并find了“ Luasec ”项目。
正如在这个线程中提到的那样:“ 使用Freebase API的Lua ”; 我已经下载了Luasec 。
我已经将ssl.lua
和ssl文件夹放在我的lua安装中,我已经将ssl.dll
放在lua安装的clibs文件夹中。
为了testing,我只在我的Lua文件中做一个require(“ssl.https”),但是崩溃了。 它说:
C:\Program Files (x86)\Lua\5.1\lua.exe: error loading module 'ssl.core' from file 'C:\Program Files (x86)\Lua\5.1\clibs\ssl.dll': %1 ist keine zulässige Win32-Anwendung. (%1 is no a valid Win32 application)
我已经testing了一个Win 7 32位的PC,它崩溃了:
C:\Program Files\Lua\5.1\lua.exe: error loading module 'ssl.core' from file 'C:\Program Files\Lua\5.1\clibs\ssl.dll': Das angegebene Modul wurde nicht gefunden. (The module cant be found)
有谁能帮我做这个工作吗?
我在Windows 7 64位上也遇到了同样的问题,使用Alien加载Windows DLL。
我加载的库(即DLL)是一个64位的DLL,但是Lua for Windows是一个32位的应用程序。
我有一个我加载的DLL的32位版本,而且工作。 看看你是否也可以找到你的图书馆的32位版本。
至于你在32位Windows上的问题,这当然可能是由于其他因素,但如果你使用的是相同的64位DLL,我想这也是行不通的。
我昨天得到了这个问题,并通过下载Luasec的源代码解决了这个问题,并建立在一个32位Windows 7的PC上的静态库。 你可以尝试建立你自己的。
我在项目的C / C ++和链接器属性中更改了一些配置。 以下是我所改变的:
或者,如果你需要,你可以在这里下载我的版本。