注意:项目安装目录一定不要有中文
因dll文件是32位:
electron@11.5.0 32位版本
electron-builder: 22.10.5
electron-rebuild: 3.2.5
我这不需要构建sqlite,所以删除了electron-egg相关依赖
# 编译工具
npm i -g node-gyp
# C++构建工具
1. 管理员模式打开PowerShell
2. npm --vs2017 i -g --production windows-build-tools
或者 npm i -g --production windows-build-tools
# 外部接口调用库
1. npm install ref-napi // 基本类型
2. npm install ref-array-napi // 数组类型
3. npm install ref-struct-napi // 结构体类型
4. npm install ffi-napi // 连接c代码和js代码
# 编译 ref-napi 库
1. cd ./node_modules/ref-napi
2. node-gyp configure // 配置
3. node-gyp build // 编译
ffi-napi
相关使用网上一大堆教程。
Uncaught Error: Dynamic Linking Error: Win32 error 126
该报错是由于dll文件位置不对引起的,文件路径是否和上面一样,否则您需要使用绝对路径。
如果调用的时候还是报错,在代码中设置环境变量,process.env.PATH =
${process.env.PATH}${path.delimiter}${当前文件dll的绝对路径}
Uncaught Error: Dynamic Linking Error: Win32 error 193
Uncaught Error: Dynamic Linking Error: Win32 error 127