windows丛林

windows丛林,windows,visual-studio,visual-studio-2008,sdk,Windows,Visual Studio,Visual Studio 2008,Sdk,我对这些SDK的windows版本有点迷茫 例如,我在windows8.1上安装了vs2013,我(还)需要将我的应用程序与vs2008运行时相链接(平台工具集) 我应该安装整个VS2008还是只安装API。在最后一种情况下,我必须安装什么SDK?您所说的是两件截然不同的事情。Windows SDK仅涵盖进行winapi调用所需的声明和库。SDK v8.1适用于自Vista以来的任何现代Windows版本,您可以通过设置_WIN32_WINNT宏来选择要作为目标的Windows版本。请注意,XP

我对这些SDK的windows版本有点迷茫

例如,我在windows8.1上安装了vs2013,我(还)需要将我的应用程序与vs2008运行时相链接(平台工具集


我应该安装整个VS2008还是只安装API。在最后一种情况下,我必须安装什么SDK?

您所说的是两件截然不同的事情。Windows SDK仅涵盖进行winapi调用所需的声明和库。SDK v8.1适用于自Vista以来的任何现代Windows版本,您可以通过设置_WIN32_WINNT宏来选择要作为目标的Windows版本。请注意,XP需要较旧的SDK版本,v7.1是最后一个仍然适用的版本,通过将平台工具集设置为v120_XP来选择

运行库是Visual Studio C/C++项目的纯实现细节,与SDK完全无关。当您使用/MD compile选项在VS2013上构建这样的程序时,它将依赖于msvcr120.dll,可能是msvcp120.dll和其他。这些DLL实现了C运行库和C++标准类。如果您使用这些库,还可能包括MFC、ATL、OpenMP和AMP

如果您仍然依赖于这些库的VS2008版本,那么您可能会遇到一个非常大的问题。您可以从redist安装程序获得这些DLL的发布版本,您可以从Microsoft下载。依赖调试版本需要在计算机上安装VS2008。但是在运行时很难将程序与程序联系起来,这一点非常明显,由于新的C++11语言标准,在VS2008和VS2013之间,运行时库发生了很大的变化。在一个程序中有多个CRT通常会引起很多麻烦


您需要大力寻求重建仍然具有VS2008依赖项的库。如有必要,请与库的所有者联系以获取更新。

我不了解有关VS2008的部分。您是否需要链接VS2008附带的运行时,还是需要使用VS2008附带的编译器(或两者都需要)?是的,不清楚。我改了。