第三方DLL库调用

WB865365840 2016-05-30 12:07:53
现在手里只有第三方的DLL库(C语音写的),没有.h lib等,通过他们的文档知道函数原型,现在在C++中想隐式调用DLL中的函数,该怎么办?

对应的DLL以及copy在源文件的同一个目录下

比如他的函数原型为 int Connect(const char*Parameters);

我用extern "C" __declspec(dllimport)int Connect(const char*Parameters);

出现错误:
Error 1 error LNK2001: unresolved external symbol __imp_Connect C:\Users\chun\Desktop\TestFace5\TestFace\TestFace\TestFace.obj TestFace
Error 2 error LNK1120: 1 unresolved externals C:\Users\chun\Desktop\TestFace5\TestFace\x64\Release\TestFace.exe 1 1 TestFace


求各位大神指教,在线等。

...全文
845 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongss 2016-05-31
  • 打赏
  • 举报
回复
可以从dll抽出.lib文件来用
WB865365840 2016-05-31
  • 打赏
  • 举报
回复
解决方案:
引用 5 楼 qq_30422087 的回复:
个人建议你用显示调用较方便,用LoadLibrary()跟FreeLibrary()
隐式的是需要lib 是吧,如果提供方只有SDK的话,使用 LoadLibrary更加方便。。。。
银点 2016-05-31
  • 打赏
  • 举报
回复
引用 7 楼 FASM_FASM 的回复:
[quote=引用 6 楼 silverpot 的回复:] 使用implib.exe生成DLL的导入库 IMPLIB (output lib name) (source dll)
vc++啥时候也能用BCB的导入库了?最新的XE10也改用COFF库文件格式了?[/quote] implib.exe是C++ builder提供的工具,用它可以把VS的DLL生成CB的lib 难道是我记错是了?!
FASM_FASM 2016-05-31
  • 打赏
  • 举报
回复
引用 6 楼 silverpot 的回复:
使用implib.exe生成DLL的导入库 IMPLIB (output lib name) (source dll)
vc++啥时候也能用BCB的导入库了?最新的XE10也改用COFF库文件格式了?
银点 2016-05-31
  • 打赏
  • 举报
回复
使用implib.exe生成DLL的导入库 IMPLIB (output lib name) (source dll)
qq_30422087 2016-05-31
  • 打赏
  • 举报
回复
个人建议你用显示调用较方便,用LoadLibrary()跟FreeLibrary()
qq_30422087 2016-05-31
  • 打赏
  • 举报
回复
你添加的路径不对,隐式调用添加的应该是.dll文件生成的.lib文件,先用.dll生成.lib先
WB865365840 2016-05-30
  • 打赏
  • 举报
回复
附加说明: 使用的是VS2013 已经把.dll添加在了下面的路径: Project -> Properties -> Linker -> Input -> Additional Dependencies
FASM_FASM 2016-05-30
  • 打赏
  • 举报
回复
错误提示很明确,链接程序找不到你的调用符号。所以你应该生成一个该dll的导入库文件。

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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