error loading module ‘cjson‘ from file ‘.\cjson.dll‘:找不到指定的程序。

编译lua-cjson

项目:https://github.com/openresty/lua-cjson

克隆下来后使用vs2022创建工程

添加三个文件即可

cpp 复制代码
fpconv.c
lua_cjson.c
strbuf.c

配置项目工程 lua头文件目录 链接器lua库文件目录

配置lua头文件 luaxxx/src

配置lua库文件 luaxxx.lib

编译dll即可使用。

lua-cjson编译成功,使用时找不到指定程序。

上述原因是因为没有导出C函数:luaopen_cjson

在项目工程(非解决方案)下面新建文件 cjson.def

添加内容

cpp 复制代码
LIBRARY "cjson"

EXPORTS

luaopen_cjson

然后配置工程

工程属性-链接器-输入-模块定义文件 cjson.def

重新编译DLL即可。

温馨提示:

如果提示不是有效的Win32程序,那是因为编译lua-cjson时用的lua版本(luaxxx.dll)和运行时lua(luaxxx.dll)不匹配导致的。

Enjoy!!!

相关推荐
yong999012 分钟前
MATLAB的智能扫地机器人工作过程仿真
开发语言·matlab·机器人
2601_9498477513 分钟前
Flutter for OpenHarmony 剧本杀组队App实战:邀请好友功能实现
开发语言·javascript·flutter
浮尘笔记14 分钟前
Go语言并发安全字典:sync.Map的使用与实现
开发语言·后端·golang
2301_8112329816 分钟前
C++中的契约编程
开发语言·c++·算法
2401_8290040216 分钟前
C++中的访问者模式
开发语言·c++·算法
黎雁·泠崖18 分钟前
Java内部类与匿名内部类:定义+类型+实战应用
java·开发语言
青槿吖24 分钟前
第二篇:JDBC进阶骚操作:防注入、事务回滚、连接池优化,一篇封神
java·开发语言·jvm·算法·自动化
赵萱婷25 分钟前
C++17 nodiscard属性深度解析
开发语言·c++·经验分享
kklovecode25 分钟前
C++对C语言的增强
c语言·开发语言·c++