处理使用node-gpy时遇到的Can't find msbuild.exe错误
在Windows中使用node-gpy编译Node.js C++原生扩展时,需要使用Visual Studio C++的"msbuild.exe"。有时尽管Visual Studio安装运行正常,在调用node-gyp时仍会遇到找不到"msbuild.exe"的错误提示:
Error: Can't find "msbuild.exe". Do you have Mircrosoft Visual Studio C++ 2008+ instlled?
node-gpy在搜索"msbuild.exe"时,是通过查询Windows注册表,提取Visual Studio C++版本号来获取"msbuild.exe"安装路径。出现上述运行错误的原因之一就是node-gpy查询Windows注册表出现差错。node-gpy查询Windows注册表的脚本代码在
C:\Users\abc\AppData\Roaming\npm\node_modules\node-gyp\lib\build.js
其中"abc"为当前用户名。 具体代码如下:
function findMsbuild () {log.verbose('could not find "msbuild.exe" in PATH - finding location in registry')var notfoundErr = new Error('Can\'t find "msbuild.exe". Do you have Microsoft Visual Studio C++ 2008+ installed?')var cmd = 'reg query "HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions" /s'
其中最后一行语句即为运行出错代码。如代码所示,node-gpy通过调用"reg.exe"查询Windows注册表。node-gpy的脚本代码中没有设置"reg.exe"路径。 "reg.exe"一般保存在'C:\\Windows\\System32\\'文件夹中,将这行代码做如下修改:
var cmd = 'C:\\Windows\\System32\\reg.exe query "HKLM\\Software\\Microsoft\\MSBuild\\ToolsVersions" /s'
node-gpy就能获取"msbuild.exe"的安装路径。
处理使用node-gpy时遇到的Can't find msbuild.exe错误相关推荐
- 解决:控制台使用nvm控制node版本时出现exit status 1与exit status 145
解决:控制台使用nvm控制node版本时出现exit status 1与exit status 145 在搭建项目时,出现如图所示的问题: 原因: status 1是因为权限不足 status 145 ...
- 编写Node.js时出现800A138F的错误
编写Node.js时出现800A138F的错误 运行Node.js 文件时,出现800A138F这样的错误的解决方法. 第一个:在你要运行的node.js文档之前添加node命令. 如: 第二个:对项 ...
- x-http-wrapper: 如何解决每次发版时,修改http相关代码造成的错误!(Android、iOS、h5)...
其实是我做了个开源工具(^__^),拿出来给大家鉴赏下,欢迎大家提意见 项目:github.com/xuyt11/x-ht- 欢迎关注和star . 功能:这是一个http相关代码的创建工具. 现在我 ...
- Android问题-DelphiXE5编义时提示找不到“连接器(arm-linux-androideabi-ld.exe)
问题现象:DelphiXE5编义时提示找不到"连接器(arm-linux-androideabi-ld.exe)" 问题提示: Checking project dependenc ...
- 安装kilo版本openstack-dashboard时出现的python compress command not found错误解决办法
2019独角兽企业重金招聘Python工程师标准>>> 安装openstack-dashboard时出现的python compress command not found错误解决办 ...
- 进程在与Windows Process Activation Service通信时出现严重错误 w3wp.exe错误
标题是两个问题 出现时间是一样的 先有进程在与Windows Process Activation Service通信时出现严重错误 然后事件查看器里就会出现w3wp.exe错误 问题的后果就是 ...
- 打开表时提示 Out of resources when opening file......错误解决
今天在使用Navicat打开数据库表时提示23-out of resources when opening file-错误. 后来到网上查查找到了原因 在mysql配置文件 my.cnf 中 找到 o ...
- 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。...
在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误信息: 访问被拒绝:"[某程序集名]". 碰到这种错误后,就去喝杯茶, ...
- 运行程序中的服务器错误是什么,登陆一个网站时,出现“/”应用程序中的服务器错误要怎么解决啊?? 爱问知识人...
登陆一个网站时,出现"/"应用程序中的服务器错误.要怎么解决啊?求高手帮我解决,谢谢啦!输入字符串的格式不正确. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟 ...
最新文章
- 在Ubuntu 16.0.4.5 LTS上安装python 2.7版本的cv2模块
- C++巧用do...while(0)
- 解决Android中No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题
- 计算某一段程序消耗的内存和时间【Java】
- 从.Net框架Bug的提交到修复代码成功合并到.NET CoreFX主线
- 某些小时后MySql连接自动掉线
- python自带的shell、其性能优于ipython吗_根据强化的性质和目的可以分成()。 A.自然强化物和人为的近似强化物B.积极强化和消极...
- Pandas 中的这 3 个函数,没想到竟成了我数据处理的主力
- 小学阅读方法六种_小学语文重难点|阅读理解的解答技巧+方法(合集)
- 目前web渗透的思路
- matlab 排序函数sort()
- jQuery 已经落幕了~
- 在正式使用计算机账务系统的银行对账功能,会计电算化账务处理系统中,银行对账的功能有哪些? 爱问知识人...
- Debian查看系统版本信息
- 中国数字商业核心产业链分布
- mysql中SQL语句查询表字段名、注释、字段类型
- linux下ftp搭建流程
- 动物模型系列之常见肿瘤动物模型
- linux超神之旅二
- 基于SparkSql的日志分析实战
热门文章
- 灵创系统服务器,服装ERP-灵创软件-ICSCM供应链管理系统
- 读史蒂芬·柯维的《高效能人士的七个习惯》有感
- Redis安装与常用命令整合
- 美国6岁病童圆梦做一天海豹突击队员
- java毕业生设计医疗健康管理平台会员管理子系统计算机源码+系统+mysql+调试部署+lw
- 【刷题日记】leetcode-1178 猜字谜
- 登录鉴权、JWT、单点登录
- Submarine:在 Apache Hadoop 中运行深度学习框架
- 潇洒郎:Python 在windows 下使用Redis
- [CTF]SCTF2021 WEB复现(详细版)