질문: getServerObjects@1만 내보내기 오류 없음, 업데이트 서비스 Object 추가 후 오류 보고,
dll의 def 파일은 다음과 같습니다.
1 LIBRARY "lbcd"
2
3 EXPORTS
4 getServerObjects @1
5 updateServiceObject @2
오류는 다음과 같습니다.
lbcd.def : warning LNK4022: cannot find unique match for symbol 'updateServiceObject'1>lbcd.def : warning LNK4002: "void __stdcall updateServiceObject(class std::basic_string
,class std::allocator>,class std::basic_string,class std::allocator>,class std::basic_string,class std::allocator>)"(?updateServiceObject@@YGXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00@Z) defined in Debug\LBC.obj1>lbcd.def : warning LNK4002: "public: virtual int __thiscall IceDelegateD::LB::LoadBalance::updateServiceObject(class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::map,class std::allocator>,class std::basic_string,class std::allocator>,struct std::less,class std::allocator> >,class std::allocator,class std::allocator> const ,class std::basic_string,class std::allocator> >> > const *)"(?updateServiceObject@LoadBalance@LB@IceDelegateD@@UAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00PBV?$map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@std@@@2@@5@@Z) defined in Debug\Load_Balance.obj1>lbcd.def : warning LNK4002: "public: virtual int __thiscall IceDelegateM::LB::LoadBalance::updateServiceObject(class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::map,class std::allocator>,class std::basic_string,class std::allocator>,struct std::less,class std::allocator> >,class std::allocator,class std::allocator> const ,class std::basic_string,class std::allocator> >> > const *)"(?updateServiceObject@LoadBalance@LB@IceDelegateM@@UAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00PBV?$map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@std@@@2@@5@@Z) defined in Debug\Load_Balance.obj1>lbcd.def : warning LNK4002: "private: int __thiscall IceProxy::LB::LoadBalance::updateServiceObject(class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::map,class std::allocator>,class std::basic_string,class std::allocator>,struct std::less,class std::allocator> >,class std::allocator,class std::allocator> const ,class std::basic_string,class std::allocator> >> > const *)"(?updateServiceObject@LoadBalance@LB@IceProxy@@AAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00PBV?$map@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@std@@@2@@5@@Z) defined in Debug\Load_Balance.obj1>lbcd.def : warning LNK4002: "public: int __thiscall IceProxy::LB::LoadBalance::updateServiceObject(class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &,class std::basic_string,class std::allocator> const &)"(?updateServiceObject@LoadBalance@LB@IceProxy@@QAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00@Z) defined in Debug\LBC.obj1>lbcd.def : error LNK2001: unresolved external symbol updateServiceObject
원인: 업데이트 서비스 Object 함수와 어떤 dll의 함수 이름이 같습니다. ICE 라이브러리의 함수 이름이 같습니다.
참조: http://blog.csdn.net/esinhee/article/details/5500842
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LoadLibrary에서 126 오류가 발생하면 원인이되는 파일 이름을 찾는 방법
Loadlibrary에서 DLL을 동적으로 로드할 때 로드 실패입니다.
실패한 파일 이름은 알려주지 않습니다.
로드하고자 하는 DLL 자체를 로드할 수 없다면 이야기는 간단하지만, 대상 DLL이 다른 DLL을 로드하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.