:#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")这样没有 错,但改成:#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" rename("BOF","adoBOF")就会编译错误1>c:\users\cjc\desktop\testdate123\testdate123\release\msado15.tlh(2375) : error C2059: 语法错误 : “<L_TYPE_raw>”
1>c:\users\cjc\desktop\testdate123\testdate123\release\msado15.tlh(2375) : error C2238: 意外的标记位于“;”之前
改成:#import "c:/program files/common files/system/ado/msado15.dll"  rename("EOF","adoEOF")
有是这个错误:
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C2146: 语法错误 : 缺少“;”(在标识符“m_pConnection”的前面)
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C2146: 语法错误 : 缺少“;”(在标识符“m_pRecordset”的前面)
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>.\TestDATE123Dlg.cpp(166) : error C2065: “m_pConnection”: 未声明的标识符
1>.\TestDATE123Dlg.cpp(166) : error C2228: “.CreateInstance”的左边必须有类/结构/联合
1>        类型是“'unknown-type'”
1>.\TestDATE123Dlg.cpp(166) : error C2065: “Connection”: 未声明的标识符
1>.\TestDATE123Dlg.cpp(169) : error C2065: “m_pConnection”: 未声明的标识符
1>.\TestDATE123Dlg.cpp(169) : error C2227: “->ConnectionString”的左边必须指向类/结构/联合/泛型类型
1>        类型是“'unknown-type'”
1>.\TestDATE123Dlg.cpp(170) : error C2065: “m_pConnection”: 未声明的标识符
1>.\TestDATE123Dlg.cpp(170) : error C2227: “->ConnectionTimeout”的左边必须指向类/结构/联合/泛型类型
1>        类型是“'unknown-type'”
1>.\TestDATE123Dlg.cpp(171) : error C2065: “m_pConnection”: 未声明的标识符
1>.\TestDATE123Dlg.cpp(171) : error C2227: “->Open”的左边必须指向类/结构/联合/泛型类型
1>        类型是“'unknown-type'”
1>.\TestDATE123Dlg.cpp(171) : error C2065: “adConnectUnspecified”: 未声明的标识符
1>TestDATE123.cpp
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C2146: 语法错误 : 缺少“;”(在标识符“m_pConnection”的前面)
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(34) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C2146: 语法错误 : 缺少“;”(在标识符“m_pRecordset”的前面)
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\users\cjc\desktop\testdate123\testdate123\TestDATE123Dlg.h(35) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

解决方案 »

  1.   

    #import生成文件 msado15.tlh,默认是有namespace ADODB {
    }
    所有内容都包在这个名字空间中。
    用了no_namespace则生成的头文件中没有namespace,所有内容是全局的。 rename("BOF","adoBOF") 将BOF改名为adoBOF,以免和C语言里的BOF重名。
    rename("EOF","adoEOF")同上...
      

  2.   

    #import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" rename("adoEOF","adoEOF") rename("adoBOF","adoBOF")改成这样也不行啊,同样错误
      

  3.   

    rename("BOF","adoBOF") 将BOF改名为adoBOF,以免和C语言里的BOF重名。rename("adoEOF","adoEOF") 是什么意思? 文件里就没有adoEOF 改什么? 不报错不是正常的吗?
      

  4.   

    #import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" rename("BOF","adoBOF")
    如果 我不改成这样,我的程序发生冲突,与EXECL的名命发生冲突,所有 我只能改成:#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" rename("BOF","adoBOF"),但是这样会的报错啊,我也想用不报错的那个,但是用了那个不错误的就会与EXECL发生名命冲突!我也是没有办法啊求解啊
      

  5.   

    #import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","ado2EOF") rename("BOF","ado2BOF")
      

  6.   

    那是adoBOF和adoEOF已经被excel的用了?  那你还命名adoBOF和adoEOF?
      

  7.   

    #import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","ado2EOF") rename("BOF","ado2BOF")