【 在 hgoldfish 的大作中提到: 】
: ucrt 也有好几个版本的是吧。。安装了新版本的 ucrt,不代表可以兼容旧的 ucrt?
: 安装 msvcrt 2019 的话,也代表着安装了 ucrt?
: 这些版本实在太乱了。记得以前 msvcrt 2010 的时候也分好几个版本。有些国产 WIN7 系统还装不上去。。
: ...................
1. 为了二进制兼容,ucrt 是独立出来的支持 C 调用约定的稳定 ABI,所以不再绑定特定版本的编译器
ucrt 是跟着windows更新走的
win10以前的系统,如果系统更新过,如果万年没更新,可以在
https://www.microsoft.com/en-us/download/details.aspx?id=48234 下载,一样是windows更新包的形式
2. 2010/12/13 是分别有 redistributable runtime,安装后叫msvcr100.dll/msvcr110.dll/msvcr120.dll
15-19 是同一个redistributable runtime,因为ucrt部分独立出去了,所以改了名字,叫做vcruntime140.dll
3. 以前的版本也不乱,每个版本 x86/x64 各一个,然后后来有升级所以有了sp
4. 简单来说,你用 vc2010 编译的,你就在安装包里根据x86/x64放一个对应的 “Microsoft Visual C++ 2010 Redistributable Package”,12/13同样
15/17/19,你就根据 x86/x64/arm 放一个 “Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019”
具体情况请看这里:
https://docs.microsoft.com/en-us/cpp/windows/determining-which-dlls-to-redistribute?view=msvc-160--
修改:hanjiamajia FROM 211.249.40.*
FROM 211.249.40.*