Dao SDK在Visual studio 6下使用得很好,怎么在vs .net 2005下老是出现无法解析的外部符号。

badbbs 2007-10-07 09:20:46
Dao SDK在Visual studio 6下使用得很好,怎么在vs .net 2005下老是出现无法解析的外部符号。
过程如下:
第一步,在vs.net 2005下点新建项目,选择MFC的工程,向导完全按缺省的下一步,完成。
第二步,生成后,在StdAfx.h 中加入“#include <dbdao.h>”
第三步,在工程设置中,链接选项,附加依赖,填入 “ddao35ud.lib”,缺省为unicode的

最后,存盘 生成解决方案,编译无错误,链接错误如下:


正在链接...

stdafx.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CdbBSTR::CdbBSTR(wchar_t *)" (??0CdbBSTR@@QAE@PA_W@Z) ,该符号在函数 "public: void __thiscall CdbBSTR::`default constructor closure'(void)" (??_FCdbBSTR@@QAEXXZ) 中被引用
stdafx.obj : error LNK2001: 无法解析的外部符号 "public: virtual void __thiscall CdbStaticCollection::Delete(wchar_t const *)" (?Delete@CdbStaticCollection@@UAEXPB_W@Z)
stdafx.obj : error LNK2001: 无法解析的外部符号 "public: virtual class CdbObject __thiscall CdbStaticCollection::ObItem(wchar_t const *)" (?ObItem@CdbStaticCollection@@UAE?AVCdbObject@@PB_W@Z)
stdafx.obj : error LNK2001: 无法解析的外部符号 "public: virtual void __thiscall CdbDynamicCollection::Delete(wchar_t const *)" (?Delete@CdbDynamicCollection@@UAEXPB_W@Z)
stdafx.obj : error LNK2001: 无法解析的外部符号 "public: virtual class CdbObject __thiscall CdbDynamicCollection::ObItem(wchar_t const *)" (?ObItem@CdbDynamicCollection@@UAE?AVCdbObject@@PB_W@Z)
stdafx.obj : error LNK2001: 无法解析的外部符号 "public: virtual class CdbObject __thiscall CdbIndexFields::ObItem(wchar_t const *)" (?ObItem@CdbIndexFields@@UAE?AVCdbObject@@PB_W@Z)
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CdbDBEngine::CdbDBEngine(int,int,wchar_t const *,wchar_t const *,wchar_t const *,long)" (??0CdbDBEngine@@QAE@HHPB_W00J@Z) ,该符号在函数 "public: void __thiscall CdbDBEngine::`default constructor closure'(void)" (??_FCdbDBEngine@@QAEXXZ) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class COleVariant __thiscall CdbRecordset::GetField(wchar_t const *)" (?GetField@CdbRecordset@@QAE?AVCOleVariant@@PB_W@Z) ,该符号在函数 "public: class COleVariant __thiscall CdbRecordset::GetField(class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > &)" (?GetField@CdbRecordset@@QAE?AVCOleVariant@@AAV?$CStringT@_WV?$StrTraitMFC_DLL@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: void __thiscall CdbRecordset::SetField(wchar_t const *,struct tagVARIANT *)" (?SetField@CdbRecordset@@QAEXPB_WPAUtagVARIANT@@@Z) ,该符号在函数 "public: void __thiscall CdbRecordset::SetField(class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > &,struct tagVARIANT *)" (?SetField@CdbRecordset@@QAEXAAV?$CStringT@_WV?$StrTraitMFC_DLL@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@PAUtagVARIANT@@@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbWorkspace __thiscall CdbWorkspaces::operator[](wchar_t const *)" (??ACdbWorkspaces@@QAE?AVCdbWorkspace@@PB_W@Z) ,该符号在函数 "public: class CdbWorkspace __thiscall CdbDBEngine::operator[](wchar_t const *)" (??ACdbDBEngine@@QAE?AVCdbWorkspace@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbDatabase __thiscall CdbDatabases::operator[](wchar_t const *)" (??ACdbDatabases@@QAE?AVCdbDatabase@@PB_W@Z) ,该符号在函数 "public: class CdbDatabase __thiscall CdbWorkspace::operator[](wchar_t const *)" (??ACdbWorkspace@@QAE?AVCdbDatabase@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbTableDef __thiscall CdbTableDefs::operator[](wchar_t const *)" (??ACdbTableDefs@@QAE?AVCdbTableDef@@PB_W@Z) ,该符号在函数 "public: class CdbTableDef __thiscall CdbDatabase::operator[](wchar_t const *)" (??ACdbDatabase@@QAE?AVCdbTableDef@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbQueryDef __thiscall CdbQueryDefs::operator[](wchar_t const *)" (??ACdbQueryDefs@@QAE?AVCdbQueryDef@@PB_W@Z) ,该符号在函数 "public: class CdbQueryDef __thiscall CdbConnection::operator[](wchar_t const *)" (??ACdbConnection@@QAE?AVCdbQueryDef@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbField __thiscall CdbFields::operator[](wchar_t const *)" (??ACdbFields@@QAE?AVCdbField@@PB_W@Z) ,该符号在函数 "public: class CdbField __thiscall CdbRecordset::operator[](wchar_t const *)" (??ACdbRecordset@@QAE?AVCdbField@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbGroup __thiscall CdbGroups::operator[](wchar_t const *)" (??ACdbGroups@@QAE?AVCdbGroup@@PB_W@Z) ,该符号在函数 "public: class CdbGroup __thiscall CdbUser::operator[](wchar_t const *)" (??ACdbUser@@QAE?AVCdbGroup@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbUser __thiscall CdbUsers::operator[](wchar_t const *)" (??ACdbUsers@@QAE?AVCdbUser@@PB_W@Z) ,该符号在函数 "public: class CdbUser __thiscall CdbGroup::operator[](wchar_t const *)" (??ACdbGroup@@QAE?AVCdbUser@@PB_W@Z) 中被引用
stdafx.obj : error LNK2019: 无法解析的外部符号 "public: class CdbDocument __thiscall CdbDocuments::operator[](wchar_t const *)" (??ACdbDocuments@@QAE?AVCdbDocument@@PB_W@Z) ,该符号在函数 "public: class CdbDocument __thiscall CdbContainer::operator[](wchar_t const *)" (??ACdbContainer@@QAE?AVCdbDocument@@PB_W@Z) 中被引用
msvcrtd.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16 ,该符号在函数 _WinMainCRTStartup 中被引用
Debug/fsMFC.exe : fatal error LNK1120: 18 个无法解析的外部命令

生成日志保存在“file://d:\aaa\fsMFC\fsMFC\Debug\BuildLog.htm”中
fsMFC - 19 错误,0 警告

这个问题如何解决。把这个网络都翻了一遍,也没见有人提这个问题。

...全文
786 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
s937484 2008-06-03
  • 打赏
  • 举报
回复
To fix this, go to Project --> Properties --> Configuration Properties -->
C/C++ --> Language, and set 'Treat wchar_t as Built-in Type' to No.
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
接分是王道!
zry000 2008-04-01
  • 打赏
  • 举报
回复
DAO SDK好象是一组COM,你#include <comip.h>和#include <comdef.h>再试一试

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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