频道栏目
位置 您现在的位置:主页 > 职业职称 > 工程建筑 > 文章正文

如何正确创建DLL和使用DLL (计算机二级)

  • 更新时间:2010-06-02 09:20
  • 来源:国信成人教育
  • 整理:陈老师
  • 点击:
内容提要:
    通过这些修改就可以告诉编译器,这个.h文件中定义的类、声明的函数和对象都是从test.dll中导入的。在项目中完成对这些类、函数、对象的调用代码后,就可以将其编译成可执行文件。将生成的可执行为文件、以及上面生成的. dll文件复制到同一个文

本文将通过一个简单的实例来说明,如何正确的导出DLL中的类、对象、函数,并如何通过静态加载或动态加载的方式来使用DLL。

  一、DLL中导出类、函数、对象

  1. 创建一个空的Win32 Dynamic-Link Library项目Test

  2. 在项目中添加一个Test.h头文件,该文件的内容如下:

  //导出类

  class __declspec(dllexport) CTest

  {

  ...

  };

  //导出函数

  __declspec(dllexport) void FuncTest();

  //导出对象

  extern __declspec(dllexport) CTest  ObjTest;

  这段代码中通过__declspec(dllexport)导出了类CTest、函数FuncTest和对象ObjTest。在.cpp文件中实现上面的声明与类的定义后,经编译就可以生成一个.dll和.lib文件了。

  二、静态加载DLL

  1. 新建一个Win32 项目。

  2. 将上面编译生成的.lib文件复制到,该项目下。

  3. 在项目中添加一个Test.h(通过该文件实现对DLL的静态加载),该.h文件的内容主要是从DLL的.h文件中复制过来。具体内容如下:

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

  //导入类

  class __declspec(dllimport) CTest

  ...{

  ...

  };

  //导入函数

  __declspec(dllimport) void FuncTest();

  //导入对象

  extern __declspec(dllimport) CTest  ObjTest;

  这个.h文件与dll的.h的不同就是,在开头加了#pragma comment(lib, "test.lib"),以及类、函数、对象前面的__declspec(dllexport)变成了__declspec(dllimport) 。通过这些修改就可以告诉编译器,这个.h文件中定义的类、声明的函数和对象都是从test.dll中导入的。在项目中完成对这些类、函数、对象的调用代码后,就可以将其编译成可执行文件。将生成的可执行为文件、以及上面生成的. dll文件复制到同一个文件夹中就可以正常运行这个可执行文件。

顶一下
(0)
0%
踩一下
(0)
0%
TAG标签:
本文编辑:admin
免责申明:以上内容仅代表原创者观点,其内容未经本站证实,高校信息网对以上内容的真实性、完整性不作任何保证或承诺,转载目的在于传递更多信息,由此产生的后果与高校信息网无关;如以上转载内容不慎侵犯了您的权益,请联系我们将会及时处理。
推荐图文
“证券从业资格证”证书样本
“证券从业资格证”证书样本

证券从业人员资格考试是由中国证券业协会负责组织的全国统一考试,证券资格是进入证券行业的必备证书,是进入银行或非银..

高校列霸王条款录取通知书“不提前交费就不录取”
高校列霸王条款录取通知书“不提前交费

8月6号收到录取通知书,10号就要把学费交上,不然通知书就作废。日前,海南省临高县的准大学生小陈遇到了一件怪事,自己..

站内搜索

推荐内容

更多>>

热点内容