最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

总结vs2010调用lib,和dll

来源:动视网 责编:小OO 时间:2025-10-02 18:40:26
文档

总结vs2010调用lib,和dll

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,DWORDul_re
推荐度:
导读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,DWORDul_re
       Vs2010调用lib和dll的总结

1.首先调用dll

  先用vs2010生成自己的dll文件,我命名为testdll.dll

   首先新建一个工程testdll,在工程中加入testdll.h和testdll.cpp

testdll.h内容为:

 extern "C" int __declspec(dllexport) add(int,int);

testdll.cpp内容为:

#include 

#include "testdll.h"

BOOL APIENTRY DllMain(HANDLE hModule,

       DWORD ul_reason_for_call,

       LPVOID lpReserved)

{

 switch(ul_reason_for_call)

 {

 case DLL_PROCESS_ATTACH:

 case DLL_THREAD_ATTACH:

 case DLL_THREAD_DETACH:

 case DLL_PROCESS_DETACH:

  break;

 }

 return TRUE;

}

int add(int a,int b)

{

 return a+b;

}

还有设置一下

编译就生成了testdll.dll库文件

再新建一个工程test

在test里面建立一个test.cpp

Test.cpp内容:

#include 

#include 

#include 

using namespace std;

int main()

{

 HINSTANCE hDll; //dll 句?柄À¨²

 hDll=LoadLibrary(TEXT("testdll.dll")); //加¨®载?dll

 typedef int(* lpAddFun)(int,int); //宏¨º定¡§义°?函¡¥数ºy指?针?类¤¨¤型¨ª

 lpAddFun addFun; //函¡¥数ºy指?针?

 int * num;

 if(hDll!=NULL) //判D断?dll加¨®载?是º?否¤?成¨¦功|

 {

  addFun=(lpAddFun)GetProcAddress(hDll,"add"); //获?取¨?想?要°a引°y入¨?的Ì?函¡¥数ºy以°?及¡ã变À?量¢?

  num=(int *)GetProcAddress(hDll,"num");

 /* if(num!=NULL)

  {

   printf("%d\\n",* num);

  }*/

  if(addFun!=NULL)

  {

   int result=addFun(3,2);

   printf("3+2=%d\\n",result);

  }

  FreeLibrary(hDll); //卸?载?dll

 }

 getchar();

 return 0;

}

设置三个地方,就可以编译了

第一:

上面打红圈的就是把testdll.dll的路径添加上去

第二:

  添加testdll.lib就可以了

 第三:

就是把testdll.dll路径添加到环境变量PATH中,就可以了。

再把VS2010关闭,再打开就可以运行。

2.调用lib

见这个链接很详细了,我就不写了很简单的

http://blog.csdn.net/mafuli007/article/details/7320663

文档

总结vs2010调用lib,和dll

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,DWORDul_re
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top