现在的位置: 首页 > 综合 > 正文

(二)新建dll以及静态调用dll

2013年11月09日 ⁄ 综合 ⁄ 共 833字 ⁄ 字号 评论关闭

注意:可以先看简单的新建dll和调用dll:http://blog.csdn.net/chenqiai0/article/details/8938150

第一步,首先编写一个add.dll,很简单,这个dll只输出一个API函数,就是add啦。
新建一个win32 dll工程,

add.cpp的内容:

i nclude "stdafx.h"

int WINAPI add(int a,int b){ file://千万别忘记声明WINAPI 否则调用的时候回产生声明错误哦!
 return a+b;
}

然后别忘了在add.def里面输出函数:

LIBRARY Add
DESCRIPTION "ADD LA"
EXPORTS
 add @1;

编译,ok,我们获得了add.dll

注意:如果弹出对话框说:无法启动程序。。。          (其实这个我们可以忽略,因为dll本来就不会调用)

////////////////////
第二步,主程序
新建一个基于对话框的工程One
在 void ConeDlg::OnBnClickedOk()里面调用add函数:

ConeDlg.cpp里进行调用:

我们用静态是直接如下就可以了(如果动态的话就先要获得函数指针)

void ConeDlg::OnBnClickedOk()

{

// TODO: 在ú此?添?加ó控?件t通?知a处鋦理え?程ì序ò代洙?码?

CDialogEx::OnOK();

int a=1; 

int b=2; 

int c=::add(a,b); 

CString temp; 

temp.Format("%d+%d=%d",a,b,c); AfxMessageBox(temp);

}

当然首先需要在ConeDlg.cpp头部添加如下代码:

#pragma comment(lib,"add.lib")

extern int WINAPI add(int a,int b);//函数声明

OK,编译运行,正确的话我们点击确定按钮就会显示1+2=3


抱歉!评论已关闭.