删除解决方案目录中的.sdf文件。它只是Intellisense数据库,Visual Studio将在您下次打开该解决方案时重新创建它。此db可能会损坏并导致IDE无法找到内容,并且由于编译器会动态生成此信息,因此不会受到影响。
如果只有IDE指示它无法找到包含的文件,但编译成功,则问题只是IntelliSense与最近的更改不完全一致。根据我自己的经验,这可以在包含现有项目时特别发生。 删除解决方案目录中生成的.sdf文件(= IntelliSense数据库)会强制Visual Studio重新生成它,以使其再次更新。只是做一个“干净”可能会做同样的事情,但需要更多的时间,因为一切都将再次生成。
如果visual studio说您错过了当前源文件夹中的某个文件,那么我使用了一个解决方案。只需右键单击要添加的文件并选择即可 Open Document ,如果它确实不存在,那么你应该看到类似的东西 cannot find file in the source file path = "somewhere in your computer" ,然后你可以做的是首先将你的源文件添加到该路径,看看它是否有效。
Open Document
cannot find file in the source file path = "somewhere in your computer"
这就是我解决这个问题的方法。
完成:)
在关闭并重新启动计算机后,刚刚发生这种情况。最终我意识到架构已经从x64以某种方式改为ARM。
如果你选择 Project 然后 All Files 在菜单中,所有文件都应显示在解决方案资源管理器中,这些文件实际位于项目映射中,但尚未包含在项目中。如果右键单击要在解决方案资源管理器中添加的文件,则可以包含该文件。
Project
All Files
尝试将头文件添加到项目的文件中。 (右键单击项目 - > gt;添加现有文件)。
我知道这是一个较老的问题,但上述答案都不适合我。在我的情况下,问题结果是我有绝对包含路径但没有驱动器号。编译很好,但是当我右键单击并尝试打开它时,Visual Studio找不到包含文件。将驱动器号添加到我的包含路径更正了问题。
我永远不会建议在项目文件的任何方面硬编码驱动器号;要么使用相对路径,宏,环境变量,要么在任何永久情况下使用树的某种混合。但是,在这种情况下,我在一些临时项目中工作,在短期内需要绝对路径。无法右键单击打开文件是非常令人沮丧的,希望这将有助于其他人。
根据我的经验,使用VS2010,当在编译时无法找到包含文件时,执行干净,然后构建通常可以解决问题。编辑器能够打开包含文件然后编译器宣布无法找到该文件,即使它在屏幕上打开也不是很少见!