如何解决使用#import添加msado28.tlb库时
在将MS ADO类型库添加到大型已建立的MFC C ++项目中时遇到问题。我为此项目使用MS VS2015,而im则使用import指令,如下所示:
#import "C:\Program Files\Common Files\System\ado\msado28.tlb" rename_namespace("ADO_CG") rename("EOF","EndOfFile")
最初,我做了一个空白测试项目以创建基本功能,并且运行良好。我建立了我的班级,然后将它们移入主项目,这是错误开始发生的时间。由于来自“ comip.h”的一些错误报告,因此我无法构建项目,该文件没有被ive感动。错误如下:
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
到目前为止,香港专业教育学院试图将导入移动到任何其他#includes之前,针对该项目使用不同的Windows版本,弄乱了几个项目设置,尝试在其他项目中进行导入,但都没有解决方案。我完全不知所措,为什么我另外三个项目在工作中完全尝试了这一点却又拒绝建立。如果有人知道为什么这会很棒,但是到现在为止,任何有助于缩小范围的信息将不胜感激。
其他信息:正在为类型库正确生成头文件,并且已在代码中正确识别了该头文件,而正是这些其他错误才成为问题。
解决方法
解决了此问题。原来这是较大代码库中的#include排序问题,甚至导致从stdafk之类的地方多次执行导入。经过重新组织后,一切正常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。