当前位置: 首页 > news >正文

包装设计网站有哪些《基层建设》官方网站

包装设计网站有哪些,《基层建设》官方网站,网上商城开发网站建设,湘潭网站制作如何正确创建DLL和使用DLL 本文将通过一个简单的实例来说明#xff0c;如何正确的导出DLL中的类、对象、函数#xff0c;并如何通过静态加载或动态加载的方式来使用DLL。 一、DLL中导出类、函数、对象 1. 创建一个空的Win32 Dynamic-Link Library项目Test 2. 在项目中添加一个…如何正确创建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文件复制到同一个文件夹中就可以正常运行这个可执行文件。 三、动态加载DLL 如果上面的DLL需要被动态调用这需在DLL的代码中添加一个 .def文件在该文件中指出哪些被导出的函数和对象是可以动态调用的。根据上面的例子.def文件的内容如下: LIBRARY    TestImpEXPORTS    ObjTest         FuncTest 在完成.def文件后重新编译dll。重新编译dll后就可以对该Dll进行动态调用了调用过程的代码如下 typedef void (*HFUNC)()HINSTANCE hDLL  LoadLibrary(Test.dll);             //加载DLLif(hDLL){           HFUNC hFun  (HFUNC)GetProcAddress(hDLL, FuncTest);       //获得Dll中FuncTest函数的指针。           if (hFun)                 hFun();    //执行函数FuncTest            else                   ...            //没有找到函数FuncTest}else{//加载失败}  上面的代码实现的对DLL中函数的动态调用在代码中通过LoadLibrary将DLL加载到内存中然后GetProcAddress获得指定函数所在的内存地址即该函数的函数指针获得指向这个函数的指针后就可以对它进行调用了。 对于DLL中对象的动态调用过程基本上是一样的先将DLL加载到内存然后通过GetProcAddress获得对象所在的地址。  从上面可以看出DLL的动态调用过程就是将DLL加载到内存然后通过GetProcAddress获得DLL中指定对象或函数在该内存中的地 址通过该地址就可以对函数或对象进行调用。由于在C中没有类的对象也没有类指针一说所以是无法动态使用DLL中的类的如果谁知道如何使用可以 告诉我。转载于:https://www.cnblogs.com/fence/archive/2010/05/27/1745019.html
http://www.huolong8.cn/news/38181/

相关文章:

  • 洛阳新光建站系统上海专业做网站的
  • 网站建设开封软件制作网站建设时间规划
  • 军事网站大全军事网wordpress 更多内容
  • 网站后台上传文件wordpress最新中文版下载
  • 网站上线稳定后工作Wordpress全站404
  • 网站建设犭金手指六六壹柒做视频的模板下载网站
  • 建设广告网站需要资质吗图书网站建设策划书
  • 阿里云服务器可以做下载类网站吗网站 为何要 备案
  • 代刷网站推广链接0元价格专业人士怎样建网站
  • 手工艺品网站建设的选题背景哈尔滨 做网站公司哪家好
  • 电子商务网站建设过程范文东莞企业网络推广
  • 赣州门户网站建设做网站网页需要什么软件
  • 甘肃网站开发电商主页设计
  • 医药网站文案编辑是怎么做的seo教程正规化岚鸿
  • 就业服务网站建设方案网站模板上传打不开
  • 麻涌东莞网站建设网站首页页面代码
  • 承接网站开发文案家具在线设计平台
  • 课桌公司网站建设南昌企业网站开发公司
  • 网站设计的机构海西州商城网站建设
  • 宝应123网站建设网高端网站建设汉狮团队
  • 街舞舞团公司做网站网站如何做用户的实名认证
  • 源码交易平台网站源码网站微信建设运维培训班
  • 个人做游戏下载网站侵权吗邢台网站123
  • 网站建设建设公司资质要求flash工作室网站模板
  • 蓝色科技网站建设sjz住房建设局网站
  • 铁路建设工程网站欧美做视频网站有哪些
  • C 建设个人网站惠州市惠城区规划建设局网站
  • 业之峰装饰公司装修每平米价格淄博网站制作优化
  • 如何建立自己的网站去推广建网站公司哪个比较好
  • 站长网ppt模板下载开发网站找什么公司