vs2010为啥总显示此项目已过期
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vs2010为啥总显示此项目已过期相关的知识,希望对你有一定的参考价值。
参考技术A 他的意思是源代码己经修改过了,是否要生成新的ExE文件替换原来的ExE文件本回答被提问者采纳 参考技术B 代码修改后没有build就开始debug,就出现“项目已过期”,要求生成(build)。如果没有退出调试状态就调试,就会出现“没找到EXE文件”。注意调试菜单中有“全部中断(break all)”和“退出调试(stop debugging)”两项,点击后者才退出了调试状态。正确流程:编码->生成->调试->退出调试->修改->重新生成->调试->退出调试...。http://zhidao.baidu.com/question/240610534.html
VS2013编程C++ 调试和生成老是出现问题,求救~~~
代码没有问题,windows8.1 6位4系统,F5出现第一个图(过期),之后出现第二个图(无法启动),新手求救TAT,急,在线等
首先在Visual Studio里如果编译没过,那么这个提示就是正常的。因为此项目已经过期表示你改了某些文件或项目配置或者上次没有编译成功,需要重新编译,否则调试会出错。
如果你上次编译通过了,按F5调试还是出现此提示,那可能就有问题了。
如果每次都出现这样的问题,那么这个解决方案很适合你。
当然解决方案不是选择“不要再显示此对话框”,这个只是不显示,但是每次调试还会先编译一次再启动。
我们要的是不要再编译了,直接启动调试吧。
首先此提示表示visual studio发现某些文件已经过期了,但是在编译的时候没有发现有文件被编译,连输出文件都没有重新生成。这不坑我吗。
好吧,其实它就是坑我的,这是Visual studio的bug。在Visual studio 2005上一般没有此问题,但是在Visual studio 2010上会出现此问题,其他版本暂时不清楚。
虽然是bug,但是也是可以解决的。
这个bug的原因是Visual studio 2010认为项目中的被删除的文件是过期的,比如项目中的某个头文件,这个头文件已经被删除,Visual studio 2010找不到这个头文件,就认为它是过期的,所以每次调试VS都认为项目是过期的,需要先编译。
那为什么编译时没有发现有文件被编译呢,原因是这个头文件没有被任何CPP或C文件使用,所以编译时没有发现有文件需要重新编译。
Bug的原理明白了,解决方案就是在VS项目中删除那个头文件。
一种笨方法就是在VS里一个个头文件点击打开,找到不能打开的。
一种聪明的方法是写脚本解析工程文件,然后验证文件是否存在。
还有一种方法是通过DebugView来查看。
下面介绍一个这种方案。
1. 打开devenv.exe.config文件(此文件在%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\ 或者 %ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\里)
2. 在</configuration>这行前面添加
<system.diagnostics>
<switches>
<add name=”CPS” value=”4″ />
</switches>
</system.diagnostics>
3. 重新启动Visual Studio
4. 打开DbgView(下载地址:http://technet.microsoft.com/en-us/sysinternals/bb896647), 勾选:菜单-》Capture-》Capture Win32 和 菜单-》Capture-》Capture Events
5. 点击F5开始调试,出现提示“此项目已经过期”时停止
6. 在DbgView按ctrl+F窗口查找“not up to date”,查找到如:
[120] Project ‘D:\cache\test1\test1.vcxproj’ not up to date because build input ‘D:\CACHE\TEST1\FUN1.H’ is missing.
7. 此时就找到了关键文件FUN1.H,只要在工程中移除这个文件再编译一次就可以了。追问
大神看不懂哎……能不能QQ上告诉我一下,麻烦了 414931437
参考技术A 看下你项目中个项目文件(.h .cpp)的最后修改时间是否有不正常的。检查下目录e:\Users\ConsoleApplication3\Debug追问
项目文件里找不到.cpp貌似根本没有生成,大神可否QQ联系下教我……414931437,因为我们上课用的VC6.0……
追答你把项目文件发上来我看一下?
追问#include
using namespace std;
int main()
cout << "Hello,world!" << endl;
return0;
这个吗……
大神QQ上说吧……因为我VS不会用基本上……
以上是关于vs2010为啥总显示此项目已过期的主要内容,如果未能解决你的问题,请参考以下文章
为啥在microsoft visual c++2010 中输入的所有程序都显示此项目已过期
vs2010 中文版怎么编译的时候按F5总是提示 “此项目已过期”