在windows 2008 R2上无法运行vc 2015的程序,显示缺少api-ms-win-crt-string-|1-1-0.dll的解决

最新移植了一个Linux程序到Windows,由于使用的Botan库最低要求 vc 2015 才能编译,所以没多想,整个程序也只能用vc 2015。

在开发机上一切都正常,程序编译执行都非常顺利,结果没有想到的事发生了。程序最终是要在一台windows 2008 R2服务器上运行,用visual studio installer打包的安装包在安装时报安装包有问题,直接放上执行文件说是缺少api-ms-win-crt-string-|1-1-0.dll。

以为是缺少vcredist,就安装了一下vc 2015的vcredist,结果没有任何用处。

查找到这篇文章《api-ms-win-crt-string-|1-1-0.dll and others missing from computer》,说得比较靠谱,需要一个什么 Update for Universal C Runtime in Windows 

于是就去下载了这个Windows6.1-KB2999226-x64.msu,跑windows 2008 R2上一安装,直接说这个更新不适用于本系统。

仔细看了一下这个更新的说明

在windows 2008 R2上无法运行vc 2015的程序,显示缺少api-ms-win-crt-string-|1-1-0.dll的解决_第1张图片

这个更新支持Windows Server 2008 R2 Service Pack 1。结果就是一顿操作猛如虎,重启N次把Service Pack 1打上,再装那个KB2999226,Ok顺利装上。

再运行我自己的程序,正常了。

微软的东西怎么就这么麻烦呢?

后来又看了一下Visual Studio 2015的最低要求:

在windows 2008 R2上无法运行vc 2015的程序,显示缺少api-ms-win-crt-string-|1-1-0.dll的解决_第2张图片

这货的确只支持 Windows Server 2008 R2 SP1。

搞出这么多商业版本,实在是害人不浅啊,我花在安装上的时间都快要超过开发了。

你可能感兴趣的:(vc,安装)