To find the missing file(s), use info from the article Enable C++ project system logging to enable debug logging in Visual Studio and let it just tell you what's causing the rebuild:
Open the
devenv.exe.config
file (found in%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\
or in%ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\
). For Express versions the config file is namedV*Express.exe.config
.Add the following after the
</configSections>
line:<system.diagnostics> <switches> <add name="CPS" value="4" /> </switches> </system.diagnostics>
Restart Visual Studio
Open up DbgView and make sure it's capturing debug output
Try to debug (hit F5 in Visual Studio)
Search the debug log for any lines of the form:
devenv.exe Information: 0 : Project 'Bla\Bla\Dummy.vcxproj' not up to date because build input 'Bla\Bla\SomeFile.h' is missing.
(I just hit Ctrl+F and searched for
not up to date
) These will be the references causing the project to be perpetually "out of date".
To correct this, either remove any references to the missing files from your project, or update the references to indicate their actual locations.
Note: If using 2012 or later then the snippet should be:
<system.diagnostics> <switches> <add name="CPS" value="Verbose" /> </switches> </system.diagnostics>