我刚刚重新组织了我的目录结构,方法是将名为stdsc
的源文件文件夹移动到新文件夹cog
中,创建路径cog/stdsc
。完成移动文件后,Visual Studio(2010)崩溃了,重新启动后,我现在获得c1xx : fatal error C1083: Cannot open source file: 'stdsc\stdsc.cpp': No such file or directory
以前驻留在.cpp
中的每个stdsc/
文件,但现在位于{{ 1}}。
我尝试过“清理项目”和“重新扫描解决方案”,但它仍尝试在旧位置编译这些文件。找到并编译新位置中的acual文件,但仍然存在错误。如何删除这些引用?
答案 0 :(得分:20)
我注意到.vcxproj
文件只是XML,所以我打开它并删除了引用旧位置的行。似乎没有令人讨厌的副作用。我这样做有点怀疑,所以如果有其他解决方案,我很乐意听到它们。
答案 1 :(得分:4)
我在Visual Studio 2010中也遇到过这个问题。
“解决方案资源管理器”有两种模式,“显示所有文件”和“过滤模式”或其他任何模式。
我通常在所有文件模式下工作,因为你可以看到文件系统中实际存在的文件。
当切换回过滤器模式时,有两个对问题文件的引用。其中一个标记为红色,并参考前一个路径。右键单击它并“从项目中排除”为我解决了问题。
答案 2 :(得分:2)
使用Visual Studio 2012,我在更改解决方案中某些文件的目录时遇到此问题。我发现我的一些源文件似乎与我正在改变的内容无关,但是没有得到正确解决。当我在解决方案资源管理器中单击它们时,它们将无法打开,因为VS正在错误的路径中查找它们。我从我的解决方案中删除了文件,然后将它们从Windows资源管理器中拖放回解决方案中。这解决了这个问题。基于错误消息,看起来错误与VS使用相对路径来识别源文件这一事实有某种关系。
答案 3 :(得分:1)
当我从磁盘中删除了一些源文件而不是从vs2012内部删除了一些源文件时,我遇到了这个问题。
解决方案: 进入vs2012文件资源管理器,导航到丢失的文件并删除它们并重新构建。
它对我有用