lua 调用c++ dll, 提示:lua: error loading module ‘cppdll2’ from file ‘.\cppdll2.dll’:
%1 不是有效的 Win32 应用程序。

出现原因:

1.lua版本错误

比如你用生成dll用的lua源文件和lib 是 lua5.4的版本,但是调用lua用的是lua5.1,那绝对会报错;
解决方法:
重新生成 lib,dll 和 exe,用对应版本的exe执行lua代码。

2.命名错误

在这里插入图片描述
红框 1 和 3名字一定要相同!!!
红框2 的 luaopen_xxx 的 xxx必须是 dll的名称,即xxx.dll
红框1和红框2名字绝对不能相同,这是明显的语法错误,但是生成时没有报错,调用才报错!

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐