vc相关编译器提示的警告:These project configuration(s) are out of date内涵

来源:互联网 发布:lol冰原狙击淘宝价 编辑:程序博客网 时间:2024/06/07 03:07

1)有时候vs2003等IDE中,一个解决方案包含了很多项目,其中有一些项目跟当前运行的项目没有依赖关系,但可能是当前项目的一个dll文件,建立解决方案时,默认将这几个项目作为批处理配置;但有时候某些项目没有修改过,对当前运行项目进行运行时调试(F5),却出现IDE提醒框:

These project configuration(s) are out of date;或者中文版“这些项目配置已经过时”,出现“是,否,取消”选项,各自含义:

Yes
You will rebuild out-of-date projects. This means:
  • If the project has not yet been built, the project is built.  【没有编译生成项目的项目将编译生成】
  • If the project has been modified since the last build, the project is rebuilt. 【修改的项目将重新编译生成】
  • The project is debugged or started without debugging. 【启动项目调试或者运行】
No
You will rebuild only those out-of-date projects that must be rebuilt before debugging. This means:
  • If the project permits debugging without rebuilding (for example, a Visual C++ MFC Application project), the project is not rebuilt.  【如果某个项目可以不需要重生成,就可以调试执行的话,则无需重生成,如dll已存在】
  • If the project must be rebuilt before debugging (for example, a Visual Basic .NET project), the project is rebuilt. 【项目必须编译生成的,则重新生成,比如vb.net项目】
  • The project is debugged, or started without debugging. 【启动项目调试或者运行】
Cancel
The current operation is stopped. No project is built, started, or debugged.

 

 

2)什么情况发生:

a  现象:一般有时候出现调整机器的系统时间时,比如把当前系统时间调到之后的2010年,在没有调整后2009年时,对项目中某些文件A-Files进行了修改,此时这几个修改的文件的修改时间变为2010年的,而后你把系统时间改回2009年。此时对这些修改文件不再修改的话,其他项目的一个文件B-Files修改的话,就会引发A-Files的项目文件过期的警告,提醒需要编译。

    原因:估计解决方案或者项目有一个最近修改时间的标记,如果项目中的cpp文件的修改时间比当前项目/解决方案的修改时间更新,则vs2003会检查到项目有更新,提醒过久。

    解决方法:到该项目目录下,查看所有文件的修改时间,看看是否有上面所说的比较后期的修改时间的文件;如果有的话,就进入那些打开文件,做一些修改操作,比如加一个空行,然后把空行删了(会修改文件的:)),保存一下文件,现在文件就是以当前系统时间为基准的时间了。

b  系统默认的配置是:

    工具(Tool)->选项(option)->环境(Environment)->项目和解决方案(Project and solution)对话框中选项

在运行时仅生产启动项和依赖项 没有打勾!

    如果你打勾了,则项目运行过程中,如果dll项目修改了,当前运行工程是一个exe,则dll中代码修改,则不会提醒“这些项目配置已经过时”,就是这里了。

0 0