VC6 ADO连接错误
连接错误:
- C/C++ code
Database.obj : error LNK2001: unresolved external symbol "public: long __thiscall ADOCG::_Collection::GetCount(void)" (?GetCount@_Collection@ADOCG@@QAEJXZ)Database.obj : error LNK2001: unresolved external symbol "public: long __thiscall ADOCG::Connection15::GetState(void)" (?GetState@Connection15@ADOCG@@QAEJXZ)Database.obj : error LNK2001: unresolved external symbol "public: long __thiscall ADOCG::Recordset15::MoveFirst(void)" (?MoveFirst@Recordset15@ADOCG@@QAEJXZ)Database.obj : error LNK2001: unresolved external symbol "public: short __thiscall ADOCG::Recordset15::GetBOF(void)" (?GetBOF@Recordset15@ADOCG@@QAEFXZ)Database.obj : error LNK2001: unresolved external symbol "public: short __thiscall ADOCG::Recordset15::GetEndOfFile(void)" (?GetEndOfFile@Recordset15@ADOCG@@QAEFXZ)Database.obj : error LNK2001: unresolved external symbol "public: long __thiscall ADOCG::Recordset15::MoveNext(void)" (?MoveNext@Recordset15@ADOCG@@QAEJXZ)
在同一工程的另一个ADO数据库类头文件中添加的:
#pragma warning (disable: 4146)
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" rename_namespace("ADOCG") rename("EOF", "EndOfFile")
using namespace ADOCG;
#pragma warning (default: 4146)
以前可以连接通过,昨天编译一下发现不行了,代码最近没改过。
请问是不是系统出什么问题了?奇怪的是另一个VS2005用到ADO的工程没出现这个现象。
[解决办法]
先clear再rebuild
再不行就把.clw .ncb之类的文件删掉,再rebuild
[解决办法]
[解决办法]
别用6.0了
[解决办法]
先测试是你的系统问题还是代码出了问题:把工程文件copy到一台vc6.0正常的电脑中,build试一下,若没问题,可能是你的vc6.0(或操作系统?)出了问题,否则就是代码出问题了。找到原因后再针对问题进行处理应更好一些,同时给自己释疑。