BSCMAKE:错误BK1506:无法打开文件StdAfx.sbr没有这样的文件或目录

时间:2008-09-20 20:29:53

标签: visual-studio-2008 visual-studio-2005 compilation .sbr

我已经将我的一个VS2006项目转换为VS2008,当试图在VS2008中构建项目时,我得到了上述错误。什么是.sbr文件?以及如何修复编译错误?非常感谢任何帮助。

5 个答案:

答案 0 :(得分:7)

你可以去:
配置属性 - > C / C ++ - >浏览信息

删除Enable Browse Information(将其设置为No

答案 1 :(得分:5)

.sbr文件用于保存项目中符号浏览的“浏览信息”。它是在源.cpp文件得到编译的同时创建的。

如果VS找不到.sbr文件,则表示源.cpp未正确编译。尝试“重建”项目(而不仅仅是“构建”它),它可以修复错误。

答案 2 :(得分:5)

在您正在编译的配置的配置部分中检查(手动).vcproj文件中的<BrowseFileInformation></BrowseFileInformation>属性标记。如果您的中间目录是普通的$(IntDir),那么空属性告诉编译将SBR文件放在与源文件相同的目录中,但BSCMAKE命令正在$(IntDir)目录中查找它们(他们不在那里。)

删除.vcproj文件中的<BrowseFileInformation></BrowseFileInformation>行(您必须通过手动编辑文件来执行此操作;在VS2010或VS2008中设置属性不会这样做)

答案 3 :(得分:2)

我通过VS向导在项目中添加一个新类来解决这个问题。

我必须更改“class.cpp”和“class.h”的位置,因此我将它们复制粘贴到正确的目录中。然后,我通过VS向导将它们添加到我的项目中,并使用了它的新路径,在生成(并重新生成)项目后,我终于得到了BSCMAKE错误。我刚刚在另一个之后发生了这个错误,说我的“class.cpp”无法找到。

感谢SVN,我得到了解决问题的方法。通过比较我的“project.vcproj”文件的当前版本和原始版本,我意识到我添加的类是使用旧路径设置的,因此无法找到正确的路径。

因此,如果您认为您的错误可能来源相同,那么您需要做的是: - 在编辑器中打开“project.vcproj”文件 - 在设置“class.cpp”路径的代码中搜索 - 改变它到正确的 - 重建你的项目

它应该工作

答案 4 :(得分:1)

我是c ++的新手,我使用的是Visual Studio 2008.我试图为一个大型程序添加一个新类并得到相同的错误(BK1506)。

对我来说问题是我没有正确使用以下方法实现我的课程:

namespace ns
{ 
    class Name
    {
    };
}

虽然这很可能不是你错误的原因我会建议人们先检查一下,因为之前的回答让我觉得我的问题比实际问题更先进