场景:已安装的VS2017维护安装MVC4时出现如下错误:
看问题描述是由于sqlcmdlnutils安装失败影响到其它组件的安装,于是单独下载此安装包进行安装,发现安装一切正常,继续维护VS2017,但是仍旧到这里就安装失败了,极度郁闷中。。。,这也没有具体的失败原因肿么破?后来想了想难道因为下载的版本和提示的不一样?然后楼主就去AppData下搜索这个文件(因为我是在线安装,安装文件肯定会缓存下来的),果不其然搜索到了这个文件,那就安装一下试试吧,一试放心了,为啥呢,报错了,错误原因如下:
Could not open key: UNKNOWNComponents7ABFE44842C12B390AF18C3B9B1A1EE8 00021599B0090400100000000F01FEC. Verify that you have sufficient access to that key, or contact your support personnel.
有错误原因了也就好解决了,看错误应该是权限问题,搜索解决方案,有两种解决办法:
一、管理员运行cmd 之后,输入secedit/configure/cfg %windir%/inf/defltbase.inf/db defltbase.sdb/verbose,完事后重新运行安装
二、打开注册表,找到HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInstallerUserDataS-1-5-18Components,然后按照解决方案的步骤:
1.右键组件“Components”,选择权限“permissions”
2.点击高级“Advanced”
3.选择拥有者“Owner”标签
4.选择"Administrators(Group)"作为拥有者"Owner",然后点击应用 “Apply”
5.当选择复选框(Replace owner on sub containers and objects)后,再次点击应用
6.返回之前的权限“Permissions”标签中选择复选框“Replace all child objects with inheritable permissions from this object”,然后再次点击应用
我是使用方法二解决的问题,操作完成后,重新运行刚才搜索到的程序,安装正常,重新维护VS2017顺利完成!
参考解决方案:http://blog.csdn.net/zh15732621679/article/details/53813117