ADO.h ADO.cpp 封装为动态库时出现错误,请协助

mountai 2004-12-27 11:45:32
ADO.h中
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" rename_namespace("ADOCG") rename("EOF", "EndOfFile")

现在计划将Ado.h Ado.cpp封装到动态库中,出现下面的错误提示,请协助,高分相送,反正我有8000多分

: error C2872: 'DataTypeEnum' : ambiguous symbol: error C2872: 'ParameterDirectionEnum' : ambiguous symbol

: error C2664: 'CreateParameter' : cannot convert parameter 2 from 'enum DataTypeEnum' to 'enum ADOCG::DataTypeEnum'
Conversion to enumeration type requires an explicit cast (static_cast, C-style cast or function-style cast)
: error C2872: 'ParameterDirectionEnum' : ambiguous symbol
: error C2664: 'PutDirection' : cannot convert parameter 1 from 'enum ParameterDirectionEnum' to 'enum ADOCG::ParameterDirectionEnum'
Conversion to enumeration type requires an explicit cast (static_cast, C-style cast or function-style cast)
: error C2872: 'DataTypeEnum' : ambiguous symbol
: error C2664: 'PutType' : cannot convert parameter 1 from 'enum DataTypeEnum' to 'enum ADOCG::DataTypeEnum'
Conversion to enumeration type requires an explicit cast (static_cast, C-style cast or function-style cast)
...全文
232 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2005-01-06
  • 打赏
  • 举报
回复
命名冲突
zhangqu_980371 2005-01-06
  • 打赏
  • 举报
回复
不如我给你一个好了
Kudeet 2005-01-05
  • 打赏
  • 举报
回复
在DLL中引入ADO库
采用下面方法在stdafx中加入
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" no_namespace rename("EOF","adoEOF")
引入ADO库的时候可能会遇到下面一些错误信息,说是有EditModeEnum、RecordStatusEnum、ParameterDirectionEnum、LockTypeEnum、DataTypeEnum、FieldAttributeEnum重定义!总是编译通不过。
遇到这种情况可以试试改成
#pragma warning(disable:4146)
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
#pragma warning(default:4146)
using namespace ADODB;
CodeProject-Jerry 2005-01-05
  • 打赏
  • 举报
回复
命名冲突 用::符号限定

你是封装网上那个吧 那个很好用的

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧