ADO编程:error C2011: 'LockTypeEnum' : 'enum' type redefinition

本文介绍了解决C++中导入ADO DLL时出现的问题,包括尝试过的无效方法及最终有效的解决方案,即在预处理器定义中添加宏 _AFX_NO_DAO_SUPPORT。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 C++ Code 
1
2
3
 
// Import the ADO type library
#import "C:\\Program Files\\Common Files\\system\\ado\\msadox.dll"  
#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename ("EOF","adoEOF")

  以下网上流传的方法,被转来转去,然而试了没啥作用!

 C++ Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
 
// 1)
#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;
// 2)
#pragma warning(disable:4146)
#import "C:/Program Files/Common Files/System/ado/msado15.dll" /
no_namespace /
rename(
"EOF","adoEOF") rename("DataTypeEnum","adoDataTypeEnum") /
rename(
"FieldAttributeEnum""adoFielAttributeEnum") rename("EditModeEnum""adoEditModeEnum") /
rename(
"LockTypeEnum""adoLockTypeEnum") rename("RecordStatusEnum""adoRecordStatusEnum") /
rename(
"ParameterDirectionEnum""adoParameterDirectionEnum")

  最终有效的方法:(VC++6.0)Project ->Setting -> C/C++ ->perprocessor ->perprocessor definitions :  里面添加 宏   _AFX_NO_DAO_SUPPORT

 

 

转载于:https://www.cnblogs.com/MakeView660/p/7694226.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值