通过一天的调试安装,electron调用dll成功,先列出当前的环境:
node版本:
18.12.0,32位的(因为dll为32位的)
VS2019
python
node-gyp
1、首先要查看报错原因,通常在某一行会有提示,常见报错:python版本问题,需要看报错信息是否升级版本。
2、电脑必须安装VS,我的电脑版本是VS2019。
3.安装ffi-napi之前,必须要全局安装node-gyp
npm i -g node-gyp rebuild
安装失败的话,升级下npm,或者缺少python环境,还是报错的话,下方留言。
4、启动electron时候,报错:electron: --openssl-legacy-provider is not allowed in NODE_OPTIONS
类似这个报错:需要升级node版本。
5、如果您的dll是32位的,需要使用32位的node安装electron,通过如下命令把electron集成到vue项目中(vue版本是2.0):
6、electron打包的时候报错,这种问题需要切换node版本,在打包即可(我的当前node版本是18.12.0,32位的,切换成14.21.3,32位的即可打包成功。当然你也可以尝试切换成别的版本试下,不是固定的!)。
7、打包完之后,dll如果是32的话,必须使用32位的安装包,使用64为的会调用失败。
8、2023-12-01补充:
当下载第三方依赖包的时候,如果你的dll为32位的,那么必须要切换到32位的node版本下载,否则,如果使用64位的node版本下载的第三方依赖,ffi-napi 包也会被更改为64位的,此时,运行项目,调用dll的时候会报错!
其他问题暂时想不到了,整了一天,能记得的问题就这么多,后期有什么问题,我会及时补充!如果有其他问题,随时留言。