24小时热门版块排行榜    

CyRhmU.jpeg
查看: 730  |  回复: 3

dew1105

金虫 (小有名气)

[交流] 【求助】开发一个校准程序,厂家提供的动态链接库,看了好多帖子,怎么调用?问题比较

通常生成的dll文件,自然会生成一个lib文件,但现在只有一个文件,如何开始。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

★ ★
ajian04(金币+2):谢谢 2010-10-28 17:44:56
dew1105(金币+1):谢谢 2010-11-10 11:07:31
DLL是动态调用的,LIB是静态调用的。
供应者,应该提供:
(1) DLL或LIB,当然,两者都提供也可以;
(2) 相应的头文件。
2楼2010-10-28 17:18:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)

★ ★
nono2009(金币+2):鼓励交流 2010-10-30 15:10:55
dew1105(金币+1):谢谢参与 2010-11-10 11:08:01
只有DLL的话,需要LoadLibrary加载DLL,然后GetProcAddress获取函数地址,然后调用之。
比如一个SomeDll.DLL中有一个Func函数 int __stdcall Func(int a, int b);
则:
HMODULE hMod = LoadLibrary(TEXT("SomeDll.DLL");
if(NULL == hMod) {/*Error Handle Here;*/}
typedef int (__stdcall* tag_func_ptr)(int, int);
tag_func_ptr Func_Ptr = (tag_func_ptr)GetProcAddress("Func";
if(NULL == Func_Ptr) {/*Error Handle Here;*/}
Func_Ptr(2,4); //这样调用函数

[ Last edited by magic7004 on 2010-10-28 at 20:01 ]
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
3楼2010-10-28 19:55:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)


nono2009(金币+1):鼓励交流 2010-10-30 15:11:07
dew1105(金币+1):谢谢参与 2010-11-10 11:08:17
引用回帖:
Originally posted by yalefield at 2010-10-28 17:18:51:
DLL是动态调用的,LIB是静态调用的。
供应者,应该提供:
(1) DLL或LIB,当然,两者都提供也可以;
(2) 相应的头文件。

LIB文件通常是与头文件一起提供的,LIB文件是给编译器编译时用的。

不提供LIB文件只提供DLL的话,就不需要提供头文件了,只需要提供DLL导出函数的文档即可。
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
4楼2010-10-28 19:58:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dew1105 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见