您的位置:首页 > 其它

LNK2019: 无法解析的外部符号--------解决方案

2011-11-03 16:09 447 查看
问题说明:

将VC6.0编译好的程序迁入vs2008中出现了大量的类似下面的错误:

BusListView.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: int __thiscall CXTPStatusBar::SetPaneText(int,class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > const &,int)" (__imp_?SetPaneText@CXTPStatusBar@@QAEHHABV?$CStringT@DV?
$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@H@Z),该符号在函数 "public: void __thiscall CMainFrame::SetStatusPaneText(unsigned int,char const *)" (?SetStatusPaneText@CMainFrame@@QAEXIPBD@Z) 中被引用

BusListView1.obj : error LNK2001: 无法解析的外部符号 "__declspec(dllimport) public: int __thiscall CXTPStatusBar::SetPaneText(int,class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > const &,int)" (__imp_?SetPaneText@CXTPStatusBar@@QAEHHABV?$CStringT@DV?
$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@H@Z)

原来在VS2008中编译程序有时也会出现这样的错误,但那只是因为某些函数没有定义而被引起的,但是以上的错误却不是,上网找了很多资料,发现最有可能的原因就是vc6和vs2008(也就是vc8)对字符处理是不同的,所以把以前编写的VS2008的程序调出来查看其连接的链接库,发现了这次的程序少了ToolkitPro1121vc90D.lib,于是试着将其加入到

项目属性-》连接器-》输入-》附加依赖项中,重新编译居然通过了,于是上网查找关于ToolkitPro1121vc90D.lib的信息,但是网上介绍的几乎没有,虽然程序没有问题了,但是自己心中的疑问还是存在,不知道ToolkitPro1121vc90D.lib是不是如自己所想是出于字符的呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐