动态链接库编程

动态链接库编写基本上可以分为五种方法

从使用角度来看,编写程序只有一种最实用!

 

Visual C++ 支持三种 DLL

      Non-MFCDLL(非MFC动态库)

      MFCRegular DLLMFC规则DLL

      MFCExtension DLLMFC扩展DLL

最常用的当然是Non-MFCDLL,

不仅mfc可以用其他的也可以用!

 

 首先打开vc6.0建立一个动态链接库,

然后选择

A simple DLL project

然后点击finish按钮

这样就生成了一个简单的DLL文件

然后再里面添加相关代码

例子:实现加法运算

int _stdcall add(int a, int b)
{

	return a + b;
}

int _stdcall sub(int a, int b)
{
	return a - b;
}


 

     然后再 File->New->Text File文档,文件名注意了

      文件后缀为 .def

def文件里面写法需要注意

LIBRARY jsqdll
EXPORTS
	add
	sub


LIBRARY 后面的字符串一定是 刚才建立项目的名字!

add sub 是函数

 

 

 

           

 

然后既可以编译连接了

成功之后,我们测试一下!

 

 

 新建一个控制台程序

 

#include <windows.h>
#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
	int sum = 0 ;
	HINSTANCE hin = LoadLibrary("jsqdll.dll");
	typedef int (_stdcall *lpadd)(int,int);
	lpadd addfunc;
	if (hin != NULL)
	{
		addfunc = (lpadd)GetProcAddress(hin,"add");
		if (addfunc != NULL)
		{
			sum = addfunc(1,2);	
			cout<<sum<<endl;	
			FreeLibrary(hin);
		}
	}
	return 0;
}


 

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值