2017-03-22 398 views
1

Visual Studio 2017 Professional。原生C++项目。 我已经改变了一些后,项目设置项目建设的结束与此:错误MSB4018:Visual Studio 2017中的“VCMessage”任务意外失败

Microsoft.CppCommon.targets(770,5): error MSB4018: The "VCMessage" task failed unexpectedly. 
Microsoft.CppCommon.targets(770,5): error MSB4018: System.FormatException: Index (zero based) must be greater than or equal to zero and less than the size of the argument list. 
Microsoft.CppCommon.targets(770,5): error MSB4018: at System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args) 
... 

PlatformToolSet提到here设置。

怎么了?

回答

1

这一次是

Configuration Properties -> Linker -> Debugging -> Generate Program Database File 

如果省略文件名(当邻居选择“生成调试信息”不为“否”),那么VS-2017完成与错误MSB4018建设。然而,在这种情况下构建目标。

+0

这也是我的问题的解决方案。你的回答为我节省了很多时间。谢谢。 –

0

右键单击该项目并转到属性>链接器>常规。 然后将“输出文件”设置为“从父项目或项目默认值继承”

0

转到错误列表窗口并单击错误,您可能会获得更多信息。在我的情况下,它指向Microsoft.CppCommon.targets中的一行,它是一个XML元素。在arguments属性中,一个值是%(Link.ProgramDatabaseFile),它没有设置并导致问题。

相关问题