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

ops/2024/9/23 10:23:55/

编译lua-cjson

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

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

添加三个文件即可

fpconv.c
lua_cjson.c
strbuf.c

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

配置lua头文件 luaxxx/src

配置lua库文件  luaxxx.lib

编译dll即可使用。

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

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

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

添加内容

LIBRARY "cjson"EXPORTSluaopen_cjson

然后配置工程

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

重新编译DLL即可。

温馨提示:

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

Enjoy!!!


http://www.ppmy.cn/ops/26125.html

相关文章

selenium-webdriver 设置宽高 node

在使用 Node.js 的 Selenium WebDriver 进行自动化测试时,你可能会需要为浏览器窗口设置特定的宽度和高度。以下是如何设置浏览器窗口大小的示例: 首先,确保你已经安装了 selenium-webdriver 包。如果还没有安装,可以通过运行以下…

数据挖掘之基于Lightgbm等多模型消融实验的信用欺诈检测实现

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 在当前的金融环境中,信用欺诈行为日益增多,给金融机构和消费者带来了巨大的损…

[华为OD] C卷 5G网络 现需要在某城市进行5G网络建设,已经选取N个地点设置5G基站 200

题目 现需要在某城市进行5G网络建设,已经选取N个地点设置5G基站,编号固定为1到N,接 下来需要各个基站之间使用光纤进行连接以确保基站能互联互通,不同基站之间架设光纤的成 本各不相同,且有些节点之间已经存在光纤相连&#…

react中解决 Capture Value 问题

解决 Capture Value 问题通常涉及确保你的函数或 Hook 能够访问到最新的状态或 props。这里有几种常见的方法: 使用依赖数组: 对于 useEffect、useCallback 和 useMemo,你可以通过在依赖数组中列出所有外部依赖来确保捕获的值是最新的。当依赖…

Python urllib 爬虫入门(1)

本文主要为Python urllib类库函数和属性介绍及一些简单示例。 目录 urllib爬取网页 简单示例 写入文件 其他读取方法 readline函数 readlines函数 response属性 当前环境信息 返回状态码 返回url地址 对url进行编码与解码 写入文件 总结 urllib爬取网页 通过pyth…

WinDbg分析崩溃dump

1. 可以用everything软件工具搜索本机。如果没有windbg的话,可以去下载一个(根据需求选择x64或x86)。现在微软不提供单独的windbg下载,可以下载一个完整的windows sdk,在安装时只选择windbg即可。 2. 双击打开WinDgb.exe软件,Fil…

自动的异地组网工具?

越来越多的企业和个人对远程访问和异地组网需求日益增加。为了满足这一需求,各种技术和服务也不断涌现。其中一项备受关注的技术就是自动的异地组网。本文将介绍这一技术的优势和特点。 【天联】组网的优势 天联组网技术以其卓越的性能和稳定性备受用户称赞。它的优…

代码随想录算法训练营day56

583. 两个字符串的删除操作 五部曲: dp数组下标及含义: dp[i][j]:以i-1为结尾的字符串word1,和以j-1位结尾的字符串word2,想要达到相等,所需要删除元素的最少次数。 dp数组初始化: dp[i][0…