Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio Visual Studio 2012 C++;导入项目后无法生成解决方案_Visual Studio_Visual Studio 2012_Visual C++ 2012 - Fatal编程技术网

Visual studio Visual Studio 2012 C++;导入项目后无法生成解决方案

Visual studio Visual Studio 2012 C++;导入项目后无法生成解决方案,visual-studio,visual-studio-2012,visual-c++-2012,Visual Studio,Visual Studio 2012,Visual C++ 2012,我使用Visual Studio 2012 Premium(版本11.0.61219.00更新5)。有一些项目的C++解决方案。任何东西都可以毫无错误地构建。然后我将一个新的(但已经存在的)项目导入到这个解决方案中(通过右键单击->Add->现有项目…)。如果我现在尝试生成此项目或以前的任何其他项目,将显示一条错误消息:“无法执行请求的操作,因为项目中已存在生成”(这不是真的,没有正在运行的生成) 如果我尝试重新生成完整的解决方案,则会显示另一条消息:“操作无法完成。参数错误。” 同时,输出

我使用Visual Studio 2012 Premium(版本11.0.61219.00更新5)。有一些项目的C++解决方案。任何东西都可以毫无错误地构建。然后我将一个新的(但已经存在的)项目导入到这个解决方案中(通过右键单击->
Add
->
现有项目…
)。如果我现在尝试生成此项目或以前的任何其他项目,将显示一条错误消息:
“无法执行请求的操作,因为项目中已存在生成”
(这不是真的,没有正在运行的生成)

如果我尝试重新生成完整的解决方案,则会显示另一条消息:
“操作无法完成。参数错误。”

同时,输出视图中根本没有错误或警告。而是给出了一个构建摘要,看起来还可以

Build Summary
-------------

Total build time: 00:12.379

========== Rebuild All: 0 succeeded or up-to-date, 0 failed, 12 skipped, Completed at 30.09.2015 17:15:58 ==========

这里可能出了什么问题?该项目似乎完好无损,我可以打开和查看的财产,没有可疑。事实上,我以同样的方式从同一来源导入了其他11个项目。我在哪里可以获得一些Visual Studio日志文件,或者打开任何可以为我指明正确方向的扩展诊断?
救救我,我卡住了

我们现在知道了这种行为的原因。“有罪”项目包含对解决方案中其他项目的引用。其他项目也做到了(并且奏效);但此特定引用的项目GUID与被引用项目的实际GUID不一致。如果我们在文本编辑器中查看*.vcxproj文件的内容,我们会发现此GUID是嵌套在
元素中的
元素(s.屏幕截图)

正如我在评论中提到的,所有项目都是从用特定领域语言编写的外部规范生成的。生成器机制中有一个微妙的错误,在某些情况下导致了错误的GUID引用

然而,令我惊讶的是,VisualStudio并没有为如此明显的问题显示任何易于理解的错误消息!如果参考项目的路径不正确,工作室会用粗体的挖掘标记(s.截图)指出这一点。如果GUID无效,为什么不这样做呢?诊断这件小事花了我们几个小时


嗯,这很新奇。首先重新启动VS。然后使用Build>configurationmanager,检查平台和构建列是否健壮。接下来,你必须告诉我们更多关于这些项目的性质。指向存储在文件共享服务或github上的解决方案和项目文件的链接是最好的。@HansPassant是的,我想共享解决方案,但它包含公司专有数据,甚至在项目命名中也是如此。也许我可以以某种方式匿名,或者制作一个没有所有“敏感”部分的类似版本。关于项目的性质:它们是从特定于领域的语言文档自动生成的。当然,有一种可能性,即发电机制在某一点上有缺陷——这是我们的第一个想法。我们的困难在于诊断到底出了什么问题。生成器已经在许多其他情况下提供了稳定的解决方案。我必须说,从您的问题中省略这些基本细节是毫无帮助的。如果您无法共享获得帮助所需的内容,则必须致电Microsoft寻求支持。重新启动VS,然后尝试重新启动计算机,以防仍然存在一些僵尸进程。如果这些都没有帮助,那么请尝试使用
msbuild
从命令行构建解决方案,以查看它1)是否实际工作,或者2)是否提供了一些更好的错误消息。另外,您是否也在从旧版本升级项目?有时升级过程会在*proj文件中留下一些额外的污点。顺便问一下,有人能告诉我,
是否是
的重要组成部分吗?如果只包含路径而不包含任何guid,就像这样
,那么一切都可以正常构建。