Electron-Vue,踩坑之调用DLL动态链接库(ffi)

2019年04月08日 9051点热度 0人点赞 0条评论
需接上文,搭建后之后,因为vue网站已经改建好了,
只是一些事务还未处理,不清楚是在主进程还是渲染进程处理。
vue项目文件复制到之前新建的项目钟后,安装依赖都是一些直观的小错误。
但是今天需要处理文件信息的时候发现,node.js fs模块需要的信息不够
所以决定调用win32 api。

调用动态链接库

搜了一下,使用的是 ffi模块,
二话 不说直接 yarn add ffi
发现各种报错,都是 node-gyp 这个模块 报的错
随即看了下npm上,
https://www.npmjs.com/package/node-gyp
Windows下需要,C++开发环境以及Python2.7

检查了一下我这里安装的是vs2019的预览版,conda环境
就新建了一个 python2.7的环境
又试了几次安装,发现还是报错 还是C++的问题
有回头去npm上看了一下,上面说要VS2017.
又检查了以下报错信息,说是找不到MSBuild
恍然大悟,2017和2019路径不同,只好卸载2019重更新安装了2017
最终:


错误1:Python版本不对

这种或者类似这种就是Python问题,我这个错误是版本不对调用的是Python3
解决办法:


1. 可以按照node-gpy给的提示,直接安装构建环境。会默认安装python2.7,和C++构建工具。或手动去Python官网下载2.7版本的

npm install --global --production windows-build-tools

2. 修改全局配置,定向Python

# 后面修改为你的2.7版本Python路径
npm config set python  C:\Program Files\Python2.7\python.exe

错误2:C++构建工具不存在或版本不对

这个截图弄丢了,但是记住几个关键字就行了,就是让你安装.net2.0或vs2005
是中文提示但是有可能变成方块,这个控制台方块问题百度就行了。
解决办法:


1. 还是按照上面的方法安装环境,但是前提是电脑里没有其他版本的开发环境。
因为我这里默认有个个2019的环境,之前修改c#程序安装的。再安装这个windows-build-tools 木有效果。

2. 安装vs2017,并指定构建工具版本
注意啊,这里的vs都是开发环境可不是运行环境。
紧接着用下面的命令设置 vs版本

npm config set msvs_version 2017

3. 如果电脑里有2017或2017以下的开发环境,可以尝试直接指定版本
实测2019木有。

npm config set msvs_version 2015
虽说通往成品的路上,全是大坑。
不要紧,我帮你添上了~

文章评论