c中如何调用dll,在线等

my_web 2006-11-28 05:04:23
希望给的具体一点,3ks
...全文
253 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovesnow1314 2006-11-28
  • 打赏
  • 举报
回复
OpenReaderLight
{
  HINSTANCE dllinst;
   int _stdcall (*openlight)(void); //openlight是你aa.dll中的一个函数
   dllinst =LoadLibrary(“aa.dll”);
   openlight=GetProcAddress(dllinst,“openlight”); //you must know the function in aa.dll
openlight();
   FreeLibrary(dd);
}
my_web 2006-11-28
  • 打赏
  • 举报
回复
#include<stdio.h>
main()
{

switch(getchar())
{
case 97:printf("开灯操作\n");//a
OpenReaderLight();
break;

case 98:printf("关灯操作\n");
//CloseReaderLight();
break;
default:
printf("default\n");
break;
}
}
OpenReaderLight()在aa.dll中,我改怎么引入aa.dll才可以正常运行
morphymorphy 2006-11-28
  • 打赏
  • 举报
回复
1 静态调用法
...

2 动态调用法

  动态调用法要用Windows API中的LoadLibrary()和GetProcAddress()来调入DLL库,指出库中函数位置,这种方法较常见。
  例程序如下:
   HINSTANCE dd;
   int _stdcall (*ddd)(void);
   dd=LoadLibrary(“xxx.dll”);
   ddd=GetProcAddress(dd,“test”);
   Caption=IntToStr(ddd());
  FreeLibrary(dd);
lovesnow1314 2006-11-28
  • 打赏
  • 举报
回复
1.
可以把.lib文件加入project,在程序中包含.h文件,
然后在你的程序中直接调用就行了。

2.
如果DLL没有.h文件,同时也就没有.lib文件。如果知道DLL中的函数参数,可以用LoadLibrary,GetProcAddress动态联接调用。

todototry 2006-11-28
  • 打赏
  • 举报
回复
dll放在当前文件夹
include对的lib文件
个人意见,高手多多指教

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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