VS2010 编译动态链接库

启动Microsoft Visual Studio 2010下Visual Studio Tools的Visual Studio命令提示(2010)开启命令行界面,在界面中使用dumpbin命令可以用于查看dll的相关信息:

dumpbin -exports xx.dll ——查看.dll提供的的导出函数;

 

VS2010中编译动态链接库:

1,创建Win32 控制台应用程序,设置应用程序类型为DLL,附加选项点击导出符号;

2,导出函数

// 导出变量

MYDLL_APIint nMyDll=0;

// 导出无参函数

MYDLL_APIint fnMyDll(void){

return42;

}

//导出有参函数

MYDLL_API int _stdcall MaxNumber(int x, int y){

if (x > y)

return x;

return y;

}

//导出的类CMYDLL的函数CMyDll()

CMyDll::CMyDll()

{

return;

}

 

.cpp中写好函数后,还需要在头文件.h中进行声明,声明里也有相应的声明格式:

extern MYDLL_API int nMyDll;//声明导出的变量

MYDLL_API int fnMyDll(void);//声明导出的无参函数

MYDLL_API int _stdcallMaxNumber(int x, int y);//声明导出的有参函数

class MYDLL_API CMyDll {//声明的类

public:

CMyDll(void);

};

 

3,写一个.def的模块文件:

LIBRARY "dll名称"

EXPORTS

MaxNumber

函数名2

函数名3

...

将该.def文件放在编译的文件夹下,然后点击项目,打开属性页面,在配置属性下的链接器中,点击输入项目,在模块定义文件中添加写的.def模块文件;

 

4,然后点击编译即可,不过该动态库只能在安装了VS2010运行库的环境下能使用,如果想要在其他环境下也可以使用,则在工程的属性项目中配置属性下的常规选项中将MFC的使用修改为在静态库中使用MFC,不过如此编译出来的dll文件比原来的dll文件要大的多;

 

 

猜你喜欢

转载自blog.csdn.net/q8547957/article/details/25716969
今日推荐