欢迎来到天天文库
浏览记录
ID:33475739
大小:137.00 KB
页数:5页
时间:2019-02-26
《总结vs2010调用lib,和dll》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Vs2010调用lib和dll的总结1.首先调用dll先用vs2010生成自己的dll文件,我命名为testdll.dll首先新建一个工程testdll,在工程中加入testdll.h和testdll.cpptestdll.h内容为:extern"C"int__declspec(dllexport)add(int,int);testdll.cpp内容为:#include#include"testdll.h"BOOLAPIENTRYDllMain(HANDLEhModule,DWORD
2、ul_reason_for_call,LPVOIDlpReserved){switch(ul_reason_for_call){caseDLL_PROCESS_ATTACH:caseDLL_THREAD_ATTACH:caseDLL_THREAD_DETACH:caseDLL_PROCESS_DETACH:break;}returnTRUE;}intadd(inta,intb){returna+b;}还有设置一下编译就生成了testdll.dll库文件再新建一个工程test在test里面建立一个test.
3、cppTest.cpp内容:#include#include#includeusingnamespacestd;intmain(){HINSTANCEhDll;//dll句?柄À¨²hDll=LoadLibrary(TEXT("testdll.dll"));//加¨®载?dlltypedefint(*lpAddFun)(int,int);//宏¨º定¡§义°?函¡¥数ºy指?针?类¤¨¤型¨ªlpAddFunaddFun;//函¡¥数ºy指?针?
4、int*num;if(hDll!=NULL)//判D断?dll加¨®载?是º?否¤?成¨¦功
5、{addFun=(lpAddFun)GetProcAddress(hDll,"add");//获?取¨?想?要°a引°y入¨?的Ì?函¡¥数ºy以°?及¡ã变À?量¢?num=(int*)GetProcAddress(hDll,"num");/*if(num!=NULL){printf("%d",*num);}*/if(addFun!=NULL){intresult=addFun(3,2);printf("3
6、+2=%d",result);}FreeLibrary(hDll);//卸?载?dll}getchar();return0;}设置三个地方,就可以编译了第一:上面打红圈的就是把testdll.dll的路径添加上去第二:添加testdll.lib就可以了第三:就是把testdll.dll路径添加到环境变量PATH中,就可以了。再把VS2010关闭,再打开就可以运行。2.调用lib见这个链接很详细了,我就不写了很简单的http://blog.csdn.net/mafuli007/article/detai
7、ls/7320663
此文档下载收益归作者所有