首页 > 电脑

VC中errorLNK2019,帮忙分析下

更新时间2018-08-02 10:17:51

 error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __thiscall CIni::SerGet(int,class ATL::CStringT<char,class StrTraitmfc_dll<char,class ATL::ChTraitsCRT<char> > > &,char const *,char const *,char const *)" (__imp_?SerGet@CIni@@QAEXHAAV?$CStringT@DV?$StrTraitmfc_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@PBD11@Z),该符号在函数 "public: int __thiscall CPanelInfoView::RecipeDownloadSave(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >)" (?RecipeDownloadSave@CPanelInfoView@@QAEHV?$CStringT@DV?$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@@Z) 中被引用

动态链接库中的函数调用标准和你的不一致。如果是标准动态库就是你调用的问题了。如果是自己写的动态库,那看下编写的时候有没有指定调用标准。建议使用动态库时候都用def文件编辑一下名称,这样就能避免名字编译改编问题了。
另外给你推荐个查看动态库中函数名称的办法,使用vc集成环境中的depends工具,看一下动态库中的名字是不是被改编了,如果被改编了你需要按照要求的去调用

你声明并使用了SerGet函数(CIni类中)

但你没有它的定义

若是你自己写的类,请补全该函数

若是引用另人的库或源码,请使用完整的库或源码


上一篇:有关c++函数原型的问题

下一篇:怎么解决:Haydee无法定位程序输入点alBufferi于动态链接库OpenAL32.dll