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“BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpR
2、eserved)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.cppTest.cpp 内容:#include #include #include using namespace std;in
3、t main()HINSTANCE hDll; /dll 句?柄hDll=LoadLibrary(TEXT(“testdll.dll“); /加载?dlltypedef 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“)
4、;/* if(num!=NULL)printf(“%dn“,* num);*/if(addFun!=NULL)int result=addFun(3,2);printf(“3+2=%dn“,result);FreeLibrary(hDll); /卸?载?dllgetchar();return 0;设置三个地方,就可以编译了第一:上面打红圈的就是把 testdll.dll 的路径添加上去第二:添加 testdll.lib 就可以了第三:就是把 testdll.dll 路径添加到环境变量 PATH 中,就可以了。再把 VS2010 关闭,再打开就可以运行。2.调用 lib见这个链接很详细了,我就不写了很简单的http:/