#import "d:\program files\common files\system\ado\msado15.dll" no_namespace , rename("EOF" , "adoEOF")

解决方案 »

  1.   

    我也加了rename("EOF","adoEOF")
    我建了一个MFC的DLL,就加入了#import那句,别的什么都没做,编译就出现下面错误:
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(143) : error C2011: 'LockTypeEnum' : 'enum' type redefinition
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(184) : error C2011: 'DataTypeEnum' : 'enum' type redefinition
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(228) : error C2011: 'FieldAttributeEnum' : 'enum' type redefinition
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(245) : error C2011: 'EditModeEnum' : 'enum' type redefinition
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(253) : error C2011: 'RecordStatusEnum' : 'enum' type redefinition
    f:\program files\microsoft visual studio\call\debug\msado15.tlh(432) : error C2011: 'ParameterDirectionEnum' : 'enum' type redefinition
    Error executing cl.exe.call.dll - 6 error(s), 0 warning(s)
      

  2.   

    把这些个 Enum 也改名吧,继续rename :
    rename("EOF" , "adoEOF") , rename("LockTypeEnum" , "adoLockTypeEnum) .....
      

  3.   

    可能你包含了ADO的头文件,如adoxxxx.h。
    当你使用 #import时,这些头文件是不需要的
      

  4.   

    我没有包含任何ado头文件,在exe文件中引入msado15.dll编译没出问题,但是在dll中就有,
    找了半天还是不明白和什么文件发生了冲突。