VS2013是否使用与VS2012相同的C运行时(例如,msvcr110)?

时间:2014-06-05 22:30:19

标签: c++ visual-studio-2012 visual-studio-2013

我一般认为每个版本的Visual Studio都绑定到不同版本的C运行时。例如:VS2005 : msvcr80.dll :: VS2008 : msvcr90.dll

我的一位同事告诉我,他的安装程序表明我们的VS2013项目依赖于 msvcr110.dll 。我们都发现这很奇怪,因为这与VS2012使用的依赖性相同。

然而,MSDN支持这一点:

Visual Studio 2013是否确实重用了2012年的运行时,或者我错过了什么?

编辑:我在原始问题中忘了提到Visual Studio 2013可再发行的运行时附带了文件 msvcr120.dll 。我的困惑来自于这个文件存在,但既没有我们的安装程序识别,也没有在MSDN文档中提到过。

编辑:在与我的同事讨论如何确定依赖关系之后,安装程序认为我们的项目依赖于 msvcr110.dll 的原因是因为它看着旧建筑。

不幸的是,这与MSDN文档中有关运行时版本的复制/粘贴错误相吻合。我将与Microsoft联系,让他们了解文档错误。再次感谢大家的帮助。

注意:即使他们确实使用了相同的运行时,我也不会假设将来的版本。我刚发现这很好奇。

1 个答案:

答案 0 :(得分:3)

默认情况下,VS 2013 C和C ++项目将取决于msvcr120.dll(或等效于msvcr120d.dll的调试版本)。

但是,通过更改“平台工具集”,可以非常轻松地将依赖关系更改为msvcr110.dll。到#34; Visual Studio 2012(v110)"如果在机器上安装了VS1012,则在项目设置中。支持返回VS 2008(v90)的较旧版本的运行时。

我认为您链接到的2013运行时的文档页面由于简单的疏忽而未更新。