发表时间:2005-7-22 14:27:00
楼主 我想在我工程里面加载外部编译好的DLL文件,并调用里面的函数,应该怎么设置????????????
|
作者:pianpianni 专家分:20
|
第
3
楼 HINSTANCE hinstDLL=NULL;
hinstDLL=LoadLibrary("hgh.dll");
if (hinstDLL)
{
me Proc;
Proc = (me) GetProcAddress(hinstDLL,"hgh");
if(Proc==NULL) AfxMessageBox("Not found fuctdion ");
|
|
作者:xqm 专家分:250
|
第
4
楼 楼上说得挺好。
当然,可以补充一点:
楼上说的是显示调用,你也可以隐蔽的方法,如下:
1.将要调用的函数作 extern 声明。
2.将动态链接库的.dll文件复制到windows 下的system目录,将.lib文件复制到应用程序所在目录。
3.执行Project|Settings菜单命令,在link页面的Object/library modules中输入导入库的路径如:Debug/mydll.lib.
就可以直接使用dll中的函数了。
|
|
作者:白云小飞 专家分:260
|
第
5
楼 楼3,楼4说得很好!不过我有一个问题。楼4所说的动态链接库方法能不能不用将.dll放在system的目录下而是放在其它的某个指定目录下?
|
|
作者:xin5439 专家分:520
|
第
7
楼 随便放在哪里都行,LoadLibrary()中用绝对路径就可以了
|
|
作者:白云小飞 专家分:260
|
第
8
楼 我们来进一步讨论DLL的函数调用中的参数问题及返回值吧?如何具体地调用一个有引入参数、引出参数、返回值的函数呢?
|
|
作者:白云小飞 专家分:260
|
第
9
楼 一. 动态链接库分类。
 与MFC无关的Win32动态链接库
 Regular Dll with MFC Statically linked
 Regular Dll using shared MFC DLL
 MFC Extension DLL(using shared MFC DLL).
这四种方式中MFC Extension DLL(using shared MFC DLL).不知是有什么特点?请教各位大虾了!
|
|
作者:cracker007 专家分:21880
|
第
10
楼 如果要扩展mfc类,就必须用它。举个例子,你有个对话框cyourdialog类,你自己从cdialog派生出来的,你要想在主程序中调用dll,就得把dll做成mfc extension.
我倒是想知道Regular Dll with MFC Statically linked和lib有什么区别?不都是静态的吗? |
|
|
|
| 日 | 一 | 二 | 三 | 四 | 五 | 六 |
---|
24 | 25 | 26 | 27 | 28 | 29 | 30 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 1 | 2 | 3 | 4 |
|
常用链接
留言簿(7)
随笔档案
文章分类
文章档案
相册
收藏夹
c++
搜索
最新评论
阅读排行榜
评论排行榜
|
|