Windows 动态库创建和使用 part 2

 一.Windows动态库的创建:

   1.先选择 "DLL" 和 “控项目” 

  Windows 动态库创建和使用 part 2

   2.添加一个头文件,一个源文件  CppDll.h,CppDll.cpp,一个模块定义文件 CppDll.def

Windows 动态库创建和使用 part 2

      关于模块定义文件的介绍(百度百科):

http://baike.baidu.com/link?url=pfwgvp6L_zHUK2XrDjy2RqCg7qwy76WrOcepxnpg2ach3aybCdJwIXeDp6FhThKbZ8H8fd9wSAhXTqJi5C45Ya

 

 
   3.3个文件的实现如下:
    //头文件
Windows 动态库创建和使用 part 2
//CppDll.h
//2014-4-2 programed by sixbeauty
//使用预编译开关切换类的导入导出定义
#ifdef DLLCLASS_EXPORTS

#define EXT_CLASS _declspec(dllexport)//DLL

#else

#define EXT_CLASS _declspec(dllimport)//使用者

//函数声明
EXT_CLASS int CPPdll_sub(int sub1,int sub2);
EXT_CLASS int CPPdll_add(int add1,int add2);
EXT_CLASS int CPPdll_mul(int mul1,int mul2);


#endif
Windows 动态库创建和使用 part 2

   //源文件

Windows 动态库创建和使用 part 2
//CppDll.cpp
//2014-4-2  programed by sixbeauty
#include"CppDll.h"


int CPPdll_add(int add1,int add2)
{
    return add1+add2;
}

int CPPdll_sub(int sub1,int sub2)
{
    return sub1-sub2;
}

int CPPdll_mul(int mul1,int mul2)
{
    return mul1*mul2;
}
Windows 动态库创建和使用 part 2

   //模块定义文件

LIBRARY
EXPORTS            
    CPPdll_add @1    
    CPPdll_sub @2
    CPPdll_mul 

   4.编译生成动态库,在工程的 "Debug" 文件夹中,有  CppDll.dll   和 CppDll.lib  文件 ,再加上我们写的头文件  CppDll.h ,这是我们一会要用的。

 

二.Windows动态库的使用:

   1.老规矩,win32控制台 + 空项目,项目名叫  CppDllUse 。

   2.把文件复制项目所在目录下面

  Windows 动态库创建和使用 part 2

   3.添加一个源文件 CppDllUse.cpp,添加一个现有项 "CppDllUse.h"  

   Windows 动态库创建和使用 part 2

  4.实现源文件:

Windows 动态库创建和使用 part 2
//2014-4-2  programed by sixbeauty
//
CppDllUse #include<stdio.h> #include"CppDll.h" #pragma comment(lib,"CppDll.lib") int main() { int sum=CPPdll_add(5,6); int sub=CPPdll_sub(5,6); int mul=CPPdll_mul(5,6); printf("sum=%d,sub=%d,mul=%d\n",sum,sub,mul); return 0; }
Windows 动态库创建和使用 part 2

  5.编译,运行。

Windows 动态库创建和使用 part 2

 

好的,今天就到这里,我还要写万恶的毕业论文,呜呜~~~~(>_<)~~~~ 

2014-04-02

Windows 动态库创建和使用 part 2,布布扣,bubuko.com

Windows 动态库创建和使用 part 2

上一篇:Windows Server 2008中部署Silverlight 双工服务问题


下一篇:【原创】在WPF窗体中动态添加控件并访问这些控件