动态链接库DLL
静态链接库的使用方法:
示例代码:http://pan.baidu.com/s/1i303qZV
1.创建工程
2.向工程中添加.cpp 和.h
3.头文件代码
#ifdef MyDLL_API #else #define MyDLL_API _declspec(dllexport) #endif MyDLL_API int Add(int a,int b); MyDLL_API int Sub(int a,int b);
4.CPP中的代码
#define MyDLL_API _declspec(dllexport)
#include "DLL.h"
int Add(int a,int b)
{
return a+b;
}
int Sub(int a,int b)
{
return a-b;
} 静态链接库的调用:
1.讲.DLL .LIB .H 复制到工程目录下
2.工程--设置--链接 将.lib文件添加到链接中 多个用空格隔开
3.添加头文件
4.直接使用方法
动态链接库的创建:http://pan.baidu.com/s/1qWJlVBm
1.创建工程
2.向工程中添加.cpp 和.def
3.cpp代码
int _stdcall Add(int a,int b)
{
return a+b;
}
int _stdcall Sub(int a,int b)
{
return a-b;
}
3. .def代码
LIBRARY DLL EXPORTS Add Sub
动态链接库的使用:
1.将DLL复制到工程目录下
2.添加以下代码
void CTestDllDlg::OnBtAdd()
{
// TODO: Add your control notification handler code here
CString str;
HINSTANCE hInst;
hInst=LoadLibrary("DLL.dll");
typedef int (_stdcall *ADDPROC)(int a,int b);
ADDPROC Add=(ADDPROC)GetProcAddress(hInst,"Add");
if(!Add)
{
MessageBox("获取函数地址失败!");
return;
}
str.Format("5+3=%d",Add(5,3));
MessageBox(str);
}
void CTestDllDlg::OnBtSub()
{
// TODO: Add your control notification handler code here
CString str;
HINSTANCE hInst;
hInst=LoadLibrary("DLL.dll");
typedef int (_stdcall *SUBPROC)(int a,int b);
SUBPROC Sub=(SUBPROC)GetProcAddress(hInst,"Sub");
if(!Sub)
{
MessageBox("获取函数地址失败!");
return;
}
str.Format("5-3=%d",Sub(5,3));
MessageBox(str);
}



浙公网安备 33010602011771号