Visual Studio 2015:程序已过期

7
我之前使用的是VS2015 RC,直到7月19日卸载并随后安装了VS2015社区版(正式版本)。我在VS2015 RC上成功调试和运行C ++程序,但是现在,当我尝试运行任何我过去已经成功调试过的简单程序或者任何新程序时,VS2015社区版会弹出一个窗口,显示:“此项目已过期。ProjectName-Debug Win32。您想构建它吗?”
我在Stack Overflow上找到了这个链接:Visual Studio Project out of date,但是即使我删除了所有.tlog文件,我仍然遇到同样的问题。我也尝试删除了所有.pdbs文件,但是也没有帮助。有人知道该如何解决吗?谢谢!

这对我有帮助,https://dev59.com/dWcs5IYBdhLWcg3wTyRl#12954908 - Pepernoot
2个回答

14
您可以更改生成输出详细程度设置,让 Visual Studio 2015 告诉您为什么正在重新生成:

  1. 构建解决方案
  2. 将 MSBuild 项目生成输出详细程度设置更改为详细(Detailed)诊断(Diagnostics)。它在这里找到:

    • 工具(菜单)
    • 选项
    • 项目和解决方案
    • 生成和运行
  3. 构建解决方案并检查输出视图。

在我的情况下,它打印了这样的消息:

1>------ Up-To-Date check: Project: xyz, Configuration: xyz ------
1>Project not up to date because build input 'C:\ws\Missing.h' is missing.

... 将该标头从项目中删除即可解决问题。


这对我有用。不知何故,项目中引用了一个文件,但磁盘上却找不到它。谢谢。 - Martin

3
如果您正在阅读这篇文章,那么可能全面重建并没有帮助。
很可能是您的项目中有一个头文件的引用,在文件系统上不存在。
尝试打开项目引用的每个头文件,并删除无法打开的文件。

如果你有一个包含数百个源文件和头文件的大型项目,打开每个头文件几乎是不可能的。CrouZ提供的构建输出详细程度提示非常快速且轻松。 - Paulus
是的,构建诊断将告诉您缺少一个头文件。问题在于它只会告诉您第一个缺失的头文件。如果有多个头文件缺失,您将不得不为每个缺失的头文件重新进行带诊断的构建。因此,如果您有一个包含数百个源和头文件的大型项目,很可能会有多个缺失的文件,在这种情况下,您需要按照本答案建议的做法去处理。 - Dan Korn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接