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

vi设计网站大全餐饮管理和营销方案

vi设计网站大全,餐饮管理和营销方案,公司注册资金最新规定,珠海制作企业网站目录 visual studio 生成dll文件以及修改dll文件名称一、准备测试代码二、设置导出dll属性三、生成dll文件 .lib .dll .pdb 的简单介绍dll文件使用方式lib文件使用方式1、动态链接 (原理)2、静态链接: visual studio 生成dll文件以及修改dll文…

目录

  • visual studio 生成dll文件以及修改dll文件名称
    • 一、准备测试代码
    • 二、设置导出dll属性
    • 三、生成dll文件
  • .lib .dll .pdb 的简单介绍
    • dll文件使用方式
    • lib文件使用方式
      • 1、动态链接 (原理)
      • 2、静态链接:

visual studio 生成dll文件以及修改dll文件名称

Windows系统下Visual Studio可以通过.def文件创建dll。

一、准备测试代码

1.确定需要导出的函数,test.cpp文件中定义如下

void fun1()
{return;
}
void fun2()
{return;
}
int main()
{return 0;
}

2. 添加.def文件,一般添加到源文件下面。*
在这里插入图片描述

在代码栏下面有一个“模块定义文件”,即我们的.def文件
在这里插入图片描述
3.编写test.def文件

LIBRARY "test"EXPORTSfun1fun2

文件添加完成,下一步即可设置一些导出规则。
在这里插入图片描述

二、设置导出dll属性

4.在我们的项目上点击右键,选择“属性”。修改一下配置
在这里插入图片描述

平台是64位还是32位要和我们的代码版本保持一致。代码版本查看如下:
在这里插入图片描述
属性页设置“目标文件名”,目标文件名需要和我们.def中的LIBRARY “test”,保持一致。同时修改下面的“目标文件拓展名”为.dll
在这里插入图片描述
在这里插入图片描述

如果目标文件名不一致可能会报以下问题。导致输出的文件dll文件名不是自己设置的。
在这里插入图片描述

三、生成dll文件

5.设置完之后,点击项目右键,生成或者重新生成,即可生成我们的dll文件。
在这里插入图片描述
在这里插入图片描述

.lib .dll .pdb 的简单介绍

.lib .dll文件都是程序可直接引用的文件,前者就是所谓的库文件,后者是动态链接库(Dynamic Link Library)也是一个库文件。而.pdb则可以理解为符号表文件(debug调试用)。

dll文件使用方式

我们的dll文件可以直接使用,调用windows的api LoadLibrary来加载dll,根据头文件调用GetProcAddress 加载dll中的函数,最后使用FreeLibrary释放。

lib文件使用方式

对于程序引用.lib文件一般有两种方式:

1、动态链接 (原理)

这种方式的基本原理是lib文件中包扩了某一段程序(函数)的入口或者说是地址,而他真正的机器码是在dll文件中,

IDE链接的时候将.lib文件(程序地址)链接到源代码中,程序运行时到相应位置(环境变量path,当前目录等)寻找dll文件并执行其中的机器码。

所以这种引用方式一般需要的文件一般有三个:.h,.lib,.dll,生成的源程序也会比较小,因为他只保存了函数地址,但是这种方式总是会出现找不到xxx.dll这种问题。

如果这时候我们还有dll的源代码,并且希望IED可以调试源码,那么就需要.pdb文件了,pdb文件中保存了dll的符号表,所谓符号表可以理解为机器码(这里是dll中的)中插入的key与源代码文件的映射,这样只要指定源码存放的路径,IDE就会自动去找源码。

需要注意的是,pdb文件和dll文件是配套的,也就是说一旦dll文件有改动(比如说重新生成)pdb文件就必须做相应改变。

pdb文件也比较大,程序运行时也会因为要完成映射而比较慢,这也是release版与debug的区别。

2、静态链接:

这种方式只需要lib文件,当然头文件也是需要的。这种方式时候lib文件中有两个部分,可以将文件后缀改为rar解压可以看到。第一部分就是和第一种方式中的key,第二部分是.obj文件存储在obj文件夹下,他相当与dll中的机器码,只不过这个机器码是在链接的时候放入程序的,而不是在程序运行时拿进来的。如果这时候我们也有源代码,并且希望IED可以调试源码,这很容易因为如果lib文件生成的时候模式是NDEBUG(好像不是也可以),obj文件夹下是有一个xx.pdb这个pdb文件中的东西会被IED放入程序的pdb中,所以直接指定源代码位置使用就可以了。

http://www.hrbkazy.com/news/19817.html

相关文章:

  • 什么网站可以做音乐相册注册平台
  • 我的世界做rpg网站搜狗网站收录
  • 教人做素食的网站无锡哪里有做网站的
  • 大连专业做网站商品关键词优化的方法
  • 只用django做网站厦门seo关键词优化
  • 电子商务网站建设理解自己做网站怎么做
  • 万网 网站建设网络营销心得体会1000字
  • 想找个人做网站国内搜索引擎
  • 潍坊哪里做网站好的竞价账户托管外包
  • 做a爱片网站广告联盟推广
  • 邢台做移动网站公司电话微信小程序开发文档
  • 用asp做网站优势宁波seo推广优化
  • 湖北省利川市建设局网站枸橼酸西地那非片是什么
  • 夏津网站建设价格东莞网站推广策划
  • 网站如何做词恩施seo整站优化哪家好
  • 可视化手机网站开发工具百度电商平台app
  • 绵阳哪个网站做外卖做的好网站优化哪个公司好
  • 简单公司网站怎么做网站推广
  • 怎样在设计网站做图赚钱上海哪家seo公司好
  • 阿里云电影网站建设教程宁波seo免费优化软件
  • b2b网站排名大全seo网站内部优化方案
  • 网页模板网站都有什么作用百度点击软件名风
  • 做网站前期了解客户什么需求百度搜索热词查询
  • 个人自制导航网站百度百科合作模式
  • 怎样建立自己网站视频网站历史权重查询
  • 黄浦网站建设seo排名点击器曝光行者seo
  • 苹果网站模板最新病毒感染
  • 网站建设问题新闻资讯百度快速排名工具
  • 西安 餐饮 网站建设十大引擎网址
  • 网站产品数据库手机seo排名