问题描述
我正在使用 Visual Studio 2015 更新 3(它捆绑了 UCRT 10.0.10240.0)来构建一个带有静态链接的 UCRT (/MT
) 的 DLL.
I am using Visual Studio 2015 update 3 (which bundles UCRT 10.0.10240.0) to build a DLL with UCRT statically linked (/MT
).
该版本的 UCRT 包含一个错误(setlocale 中的死锁),因此我安装了带有 UCRT 10.0.10586.0 的 Windows 10 SDK,但 Visual Studio 继续使用它自己的版本 10.0.10240.0.
That version of UCRT contains a bug (deadlock in setlocale), I have therefore installed Windows 10 SDK with UCRT 10.0.10586.0, but Visual Studio keeps using it's own version, 10.0.10240.0.
因此我的问题是 - 如何让 Visual Studio 与最新的 UCRT 库链接?
Hence my question - how do I get Visual Studio to link with the latest UCRT libs?
推荐答案
正如 Hans Passant 在他的评论中提到的,安装 Windows 10 SDK 后,可以在 中定位新的 UCRTVisual Studio 2015 使用项目设置中的目标平台版本"下拉菜单.
As Hans Passant mentioned in his comment, after installing Windows 10 SDK, it is possible to target the new UCRT in Visual Studio 2015 using the "Target Platform Version" drop-down in Project Settings.
如果不这样做(目标平台版本为 8.1),Visual Studio 将继续使用 UCRT 10.0.10240.0.
If this is not done (Target Platform Version is 8.1), Visual Studio will continue to use UCRT 10.0.10240.0.
但是,VS2015 命令提示符"似乎会自动选择最新的 UCRT.
However, "VS2015 Command Prompt" seems to automatically pick up the latest UCRT.
这篇关于如何告诉 Visual Studio 2015 使用来自 Windows 10 SDK 的最新 UCRT的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!