Failed to install Microsoft Visual C++ 2015-2019 Redistributable


【问题描述】安装MicroStation的时候,依次弹出如下截图的报错,最后的报错是:
Failed to install Microsoft Visual C++ 2015-2019 Redistributable

【分析原因】VC++相关,如上的报错截图的第一个指向的路径信息里,如两处箭头所示,包含版本号信息:V14.28.29914以及类型信息:Minimum,而报错对话框的标题里提示的版本号则是14.29.30133
如下截图是添加删除程序中列出的对应信息。发生此问题时,如下截图中的标识的两个VC++版本号都是V14.28.29914,这两个名字相同的软件,一个是Minimum 版本,一个是Additional 版本。

安装MicroStation的时候,它实际需要安装的是VC++ 14.29.30133版本的Minimum类型。但是它发现电脑中已经安装一个旧版,所以就要对旧版进行更新,而更新旧版则需要找到旧版的安装包,路径就是C:\ProgramData\Package Cache... 如报错截图中所示的一样,而旧版的安装包已经找不到,所以也无法升级,因此就导致了本次报错。

 

【解决方法】
1. 解压并使用如下微软提供的卸载工具:
     communities.bentley.com/.../5226.MicrosoftProgram_5F00_Install_5F00_and_5F00_Uninstall.meta.diagcab.zip

2. 按照提示,选择卸载,然后从列表中选择VC++2019 Minimum 14.28.29914 进行卸载(请注意,这个微软工具里会显示VC++ 是Minimum 还是Additional)
3. 重启电脑。
4. 重新安装MicroStation,就不会报错,从添加删除程序去查看,会发现 VC++ 14.29.30133版本 (Minimum类型)被成功安装了。
    仅仅为了查看版本为目的,可以再次运行微软的卸载工具,查看列表,就能看到如下信息:
    

补充:在实际的案例中,也曾遇到更难处理的情况,就是在相同的报错下,添加删除程序以及文章中提及的专用卸载工具中都不显示旧版C++的记录,这时只能根据报错对话框中提示的旧版本信息,下载和安装相同的C++旧版本。由于微软不再提供C++旧版本的安装包,可以参考如下链接来查询和获取。对应的旧版本安装好之后,可以重新安装新版C++,或者重新安装新版MicroStation软件。
(+) (20)安装OBD与所需Visual C++的版本匹配列表 - 技术资料库 - Bentley 中国优先社区 - Bentley Communities