有两种 dll 函数导出方式。

Create a module definition (.def) file and use the .def file when building the DLL. Use this approach if you want to export functions from your DLL by ordinal rather than by name.
1.定义 .def 文件统一导出

Use the keyword __declspec(dllexport) in the function’s definition.
2.在导出的函数前面加上 __declspec(dllexport)


演示工程:
https://github.com/dss875914213/dll_demo


定义 .def 文件

至少需要编写两部分

  1. 定义名称
  2. 导出函数名称
LIBRARY   BTREE
EXPORTSInsert   @1Delete   @2Member   @3Min   @4

dll 和调用dll工程的调用约定需要一样,不然会报错,不识别导出的函数。


__declspec(dllexport)导出

__declspec(dllexport) int Add(int a, int b);
__declspec(dllexport)  int Add(int a, int b)
{return a + b;
}

使用 DUMPBIN 工具查看 dll 中导出的函数

The exports table of a DLL can be viewed by using the DUMPBIN tool with the /EXPORTS option.

1.打开下面的工具

2.运行下面的命令
DUMPBIN /EXPORTS xxx.dll

参考文献:

https://docs.microsoft.com/en-us/cpp/build/exporting-from-a-dll?view=msvc-160
https://blog.csdn.net/qq_21033779/article/details/79046826

visual studio 创建 dll 文件相关推荐

  1. CANoe DLL编程(一)—— Visual Studio 创建DLL以及动态调用

  2. Xamarin XAML语言教程使用Visual Studio创建XAML

    Xamarin XAML语言教程使用Visual Studio创建XAML Xamarin.Forms允许开发人员通过XAML语法对程序的所有用户界面元素进行详细的定制,如文本.按钮.图像和列表框等. ...

  3. 使用Visual Studio 创建新的Web Part项目

    使用Visual Studio 创建新的Web Part项目 Web Part是你将为SharePoint创建的最常见的对象之一.它是平台构建的核心基块. 1. 管理员身份打开Visual Studi ...

  4. 使用 Visual Studio 对源代码文件进行哈希处理以确保文件完整性

    对所有编译的软件语言来说,将人类可读代码转换成计算机可读代码都是一项软件保障挑战: 用户如何有信心相信在其计算机上运行的软件程序是根据开发者创建的同一源代码文件生成的呢? 这不一定,即使源代码文件经过 ...

  5. 如何使用Visual Studio创建SQL Server数据库项目

    目录 背景 介绍 创建新的SQL Server数据库项目 发布以在SQL Server中创建新数据库 结论 背景 数据库在任何应用程序中都扮演着最重要的角色,当表.视图.存储过程的数量增加时,项目管理 ...

  6. AutoCAD.net: 用于ObjectARX 开发的Visual Studio 智能感知文件

    用于ObjectARX 开发的Visual Studio 智能感知文件!下载解压后是三个相关的XML文件(accui.xml,acdbmgd.xml,acmgd.xml),把它们放到你的AutoCAD ...

  7. Visual Studio创建C语言编程环境

    Visual Studio创建C语言编程环境 1.启动 visual studio 2.创建新项目 3.配置新项目 4.创建源文件 5.添加新项 1.启动 visual studio 将 visual ...

  8. 怎么创建dllwenjian_如何创建DLL文件

    动态链接库(DLL)是从C语言函数库和Pascal库单元的概念发展而来的.所有的C语言标准库函数都存放在某一函数库中.在链接应用程序的过程中,链接器从库文件中拷贝程序调用的函数代码,并把这些函数代码添 ...

  9. 解决 Visual Studio 2017 RC 不兼容低版本 Visual Studio 创建的 MVC 4 项目的问题

    解决 Visual Studio 2017 RC 不兼容低版本 Visual Studio 创建的 MVC 4 项目的问题 参考文章: (1)解决 Visual Studio 2017 RC 不兼容低 ...

最新文章

  1. 数据库期末复习之事务与数据恢复
  2. 526个常用英语词组
  3. android获取毫秒,Android 日期转为为毫秒,毫秒转化为日期,获取当期日期年、月、日...
  4. Java代码格式化算法_一个时间格式化的工具类:TimeUtil
  5. 2016网易有道内推笔试题
  6. IDEA - 解决“idea 环境:junit:4.11 测试 mybatis 代码,无法导入 org.junit.Test 包”问题
  7. 通过OPENSSL建立证书以及CSR证书签名过程
  8. 题目 1427: 蓝桥杯2013年第四届真题-买不到的数目
  9. 2021年终总结——工作第四年
  10. leetcode 会员转让
  11. 美联航客机门被冻坏无法起飞 乘客困机上约16小时
  12. 一款手机看电脑上电影视频的win10应用
  13. PyTorch(13)---优化器_随机梯度下降法
  14. 帝国cms更新php,帝国CMS自动刷新首页的方法
  15. 健康大讲堂—凡膳皆药 寓医于食
  16. LearnOpenGL笔记->入门->变换与坐标系统
  17. ITE平台开发 chapter 1-环境搭建
  18. HIT-ICS2020大作业
  19. Microsoft Visual Studio 2010安装包、创建工程(一)
  20. Blender2.9基础六:自带插件篇

热门文章

  1. 高效备考CISAW认证考试
  2. 趣解 ceph rgw multisite data sync 机制
  3. Keil C51程序设计
  4. 虚拟宝-为你揭秘在家赚钱靠谱的方法
  5. 实验 二叉树的基本操作
  6. 微信小程序 —— button按钮去除border边框
  7. matlab坐标单位,Matlab画图让坐标轴单位长度相同
  8. B12专访 | 袋鼠云拖雷:未来十年是数据中台的黄金年代
  9. 【牛客网】牛客寒假算法基础集训营2——处女座与重修费
  10. 敏捷思维- 架构设计中的方法学