一.隐式调用
1.在project set中和link tab页增加lib文件,多个文件用空格隔开
2.增加一个头文件 #include "nterface.h",并把头文件增加到引用的cpp中,对lib中函数进行申明如dll有个函数add 头文件申明格式如下
int APIENTRY add(int a,int b);
3.在窗口增加一个按钮事件增加如下代码
void CCALLWEBSERVICEDlg::OnButton4()
{
HINSTANCE hInst;
int result;
/* hInst=LoadLibrary("Dll2.dll");
typedef int ( _stdcall *ADD)(int a,int b);
ADD add=(ADD)GetProcAddress(hInst,"add");
if (!add)
{
MessageBox("取函数add地址失败!");
}
*/
result =add(2,4);
CString strr;
strr.Format("result=%d",result);
m_return.SetWindowText(strr);
}
二显示调用
1.把要调用的dll放入项目录下
2.增加一个按钮事件
void CCALLWEBSERVICEDlg::OnButton4()
{
HINSTANCE hInst;
int result;
hInst=LoadLibrary("Dll2.dll");
typedef int ( _stdcall *ADD)(int a,int b);//_stdcall这个标识要用,否则会报错
ADD add=(ADD)GetProcAddress(hInst,"add");
if (!add)
{
MessageBox("取函数add地址失败!");
}
result =add(2,4);
CString strr;
strr.Format("result=%d",result);
m_return.SetWindowText(strr);
}