今天遇到的一个VC预编译的问题

来源:百度文库 编辑:神马文学网 时间:2024/04/29 17:26:39
我遇到的问题就是在加入ADO2.h,ado2.cpp时出现的,本来运行正常的程序加入这两个文件之后出现了预编译错误,提示我不能访问预编译文件,刚开始以为可以找到简单的方法,比如重启就能解决。但是通过调试发现,不那么简单。通过查询msdn,首先了解了一下*.sbr文件,BSCMAKE 的输入文件是 .sbr 文件。编译器为编译的每个对象文件 (.obj) 创建一个 .sbr 文件。生成或更新浏览信息文件时,项目的所有 .sbr 文件在磁盘上都必须可用。若要创建包含所有可能信息的 .sbr 文件,请指定/FR。若要创建不包含本地符号的 .sbr 文件,请指定/FR。如果 .sbr 文件包含本地符号,仍然可以通过使用 BSCMAKE 的/El 选项从 .bsc 文件中省略这些符号。不用执行完全编译便可以创建 .sbr 文件。例如,如果指定 /FR 或 /Fr,则可以指定编译器的 /Zs 选项来执行语法检查并且仍然生成 .sbr 文件。如果首先压缩 .sbr 文件以移除未引用的定义,则生成过程的效率会更高。编译器自动压缩 .sbr 文件。
当时提示的错误号为:C1010,msdn中的解释是在查找预编译头指令时遇到意外的文件结尾,用/Yu 指定的包含文件没有列在源文件中。您是否不小心删除了 #include 语句,而该语句引用了 /Yu 所需的 .h 文件?Afxstd.h文件不存在了,后来自己建立之后还是出问题。纳闷,后来试着在ado2.h中加入#include “Afxstd.h”,就不出现那个问题了,大功告成。