C++ 使用#导入添加msado28.tlb库时在不相关文件中引起的问题

C++ 使用#导入添加msado28.tlb库时在不相关文件中引起的问题,c++,visual-c++,import,compiler-errors,ado,C++,Visual C++,Import,Compiler Errors,Ado,IM有问题将MS-ADO类型库添加到一个大型的MFC C++项目中。Im在本项目中使用MS VS2015,Im使用的导入指令如下: syntax error: missing ')' before 'constant' Line 136 syntax error: missing ')' before 'constant' Line 136 syntax error:

IM有问题将MS-ADO类型库添加到一个大型的MFC C++项目中。Im在本项目中使用MS VS2015,Im使用的导入指令如下:

    syntax error: missing ')' before 'constant'                           Line 136
    syntax error: missing ')' before 'constant'                           Line 136
    syntax error: 'constant'                                              Line 141
    syntax error: ')'                                                     Line 141
    unexpected token(s) preceding ':'; skipping apparent function body    Line 141
    unexpected end-of-file found                                          Line 931
#导入“C:\Program Files\Common Files\System\ado\msado28.tlb”重命名(名称空间(“ado\U CG”)重命名(“EOF”,“EndOfFile”)

最初,我做了一个空白测试项目来创建基本功能,它工作得很好。我构建了我的类,然后将它们移动到主项目中,这就是错误开始发生的时候。我无法建立该项目,因为从“comip.h”报告的几个错误,这不是一个我接触过的文件。错误如下:

    syntax error: missing ')' before 'constant'                           Line 136
    syntax error: missing ')' before 'constant'                           Line 136
    syntax error: 'constant'                                              Line 141
    syntax error: ')'                                                     Line 141
    unexpected token(s) preceding ':'; skipping apparent function body    Line 141
    unexpected end-of-file found                                          Line 931
到目前为止,我尝试过在任何其他项目之前导入,针对项目的不同windows版本,弄乱几个项目设置,尝试在其他项目中导入,但都没有解决方案。我完全搞不懂为什么另外三个项目我在工作中尝试了这个,但这个项目却拒绝建造。如果有人知道为什么这会很好,但在这一点上,任何有助于缩小范围的信息都将不胜感激


其他信息:正在为类型库正确生成头文件,并且在代码中正确识别头文件,正是这些生成的其他错误才是问题所在。

解决了此问题。事实证明,这是因为#在更大的代码库中进行include排序,这导致导入即使在stdafk这样的地方也要运行多次。经过一些重新组织后,它的所有工作都很好。

解决了这个问题。事实证明,这是因为#在更大的代码库中进行include排序,这导致导入即使在stdafk这样的地方也要运行多次。经过一番重新组织后,一切正常