VC调试CRT的故事是什么?它应该来自哪里?
特别是在我的机器上运行VS2008和VS2010我没有在c:\ windows \ winsxs中安装amd64版本?
在互联网上阅读此内容非常令人困惑,我觉得每个人都在乱砍,将比特复制到C:\ windows \ system32等。我想在哪里获得调试CRT以及如何正确安装它?我看到在VS安装期间,二进制文件被复制到C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ redist。
现在是什么?
答案 0 :(得分:4)
Microsoft不希望您将Debug CRT DLL放在最终用户计算机上,因此它们不会为其提供安装程序。
引自the VC2005 doc on MSDN我认为这仍然适用于2008年(重点是我的):
应用程序的调试版本是 不可再分发和没有 调试各种Visual的版本 C ++动态链接库(DLL)是 再发行的即可。调试版本的 应用程序和Visual C ++库 只能部署到另一个 计算机内部的开发 网站的唯一目的是调试 并测试您的应用程序 没有Visual C ++的计算机 2005安装。
如果您需要在其他计算机上测试应用程序的调试版本,您仍然可以:
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist
复制到您的应用程序目录答案 1 :(得分:0)
我尝试了上面的第一个选项 - 将DLL和Manifest从C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ redist \ Debug_NonRedist复制到我的应用程序目录
我的测试机器上的SxS系统一直抱怨(通过sxstrace)版本号不正确。
Interad,我在c:\ Windows \ winsxs \ Manifests \ amd64_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_4ec74c6b3093419c.manifest中找到了更新版本的清单,并将其复制到测试应用程序中的Microsoft.VC90.DebugCRT.manifest 。目录