【发布时间】:2014-03-29 02:52:54
【问题描述】:
我有一个全新 Windows 8.1 Pro x64 安装和一个全新 Visual Studio 2013 Pro。 尝试使用 Platform Toolset 将项目编译为 Windows7.1SDK 我得到了
Error 1 error MSB6006: "CL.exe" exited with code -1073741515. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.targets 57 5 MenuBrowser
我尝试运行提供的“Windows SDK 配置工具”,除了收到有关未安装 Visual Studio 2005 和 2008 的错误外,我认为它完成了工作。
我尝试手动编辑注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows
我手动将CurrentInstallFolder 设置为C:\Program Files\Microsoft SDKs\Windows\v7.1\,将CurrentVersion 设置为7.1.7600.0.30514。如果我查看项目属性并单击其中的不同路径/变量 -> 更多 -> 宏,我可以看到 $(WindowsSdkDir) 是正确的。
知道我应该尝试什么吗?在装有 Windows 7 和 VS 2012 的旧开发计算机上从未遇到过这个问题。
L.E.作为说明,如果我尝试使用 v120 工具的新项目,它可以工作,但我需要 Windows7.1SDK 工具。
【问题讨论】:
-
作为帮助,退出代码可以解释为
0xC0000135(您拥有的代码的未签名版本),在进行搜索时可能会出现更多结果。快速搜索一下,您可能会在 64 位项目中链接 32 位库?或者您没有运行正确的 vcvarsall.bat? -
感谢您的回复!我在 IDE 中运行。 Win32 Debug、Release、x64 Debug、Release,中间有 Clean Project 给出相同的错误。
-
为此我创建了一个新的控制台应用程序项目,但它不能使用 Windows7.1SDK 编译。
-
我能建议的就是在选项中检查 2013 年等效的“项目和解决方案”(对不起,我这里只有 2008 年!!),并检查 win32 和库文件的路径win64 项目设置正确(
$(WindowsSdkDir)\lib和$(WindowsSdkDir)\lib\x64或类似)。 -
包含目录是
$(WindowsSdkDir)\include;$(VCInstallDir)include,如果我展开并单击宏,我可以看到$(WindowsSdkDir)为C:\Program Files\Microsoft SDKs\Windows\v7.1\,这在我的机器上是正确的。库相同 -$(WindowsSdkDir)lib;$(VCInstallDir)lib.
标签: c++ windows winapi visual-studio-2012 visual-studio-2013