动态链接库编程

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

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

 

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;
}


 

 


 

你可能感兴趣的:(编程,null,文档,mfc,dll,library)