转载:https://blog.csdn.net/s978697043/article/details/82429802

一、创建动态链接库(生成.dll .lib 两个文件)

文件→新建→项目

选择控制台应用程序
 
 选择DLL,勾选空项目,点击完成
 
添加源文件A.cpp(只要写被调用的函数)

#include<iostream>
using namespace std;
//整数加法
int Add(int a, int b){
    return a + b;
}123456

添加头文件A.h(函数声明)

int Add(int, int );1

建立源文件Source.def

1、选择 VisualC++ -> 模块定义文件(.def)
    2、在此文件第一行引号中填你的项目名称即可,EXPORTS下面列出要生成的函数名称 格式:“名称 @序号”)
 
生成解决方案,编译成功后可以在debug文件夹下发现生成了CreateDLL.dll和CreateDLL.lib文件。

二、调用动态链接库(.dll)

创建TestDLL来测试该动态链接库,选择控制台应用程序,空项目
 
新建添加B.cpp文件(先不要调用该动态链接库,写好main函数直接编译)
然后引用dll步骤如下:

1.项目->属性->配置属性->VC++ 目录-> 在“包含目录”里添加头文件A.h所在的目录

2.修改dll项目的输出路径为:调用程序的.cpp所在目录,并重新生成动态链接库。(这样可以省去调试dll时,还需要再复制新生成的dll文件的时间。)

3.项目->属性->配置属性->VC++ 目录-> 在“库目录”里添加CreateDLL.lib所在的目录

4.项目->属性->配置属性->链接器->输入-> 在“附加依赖项”里添加“CreateDLL.lib”

5.编辑main函数,加入调用动态链接库的语句。

#include<iostream>
#include"A.h"
using namespace std;

int main()
{
    cout<<Add(23, 1)<<endl;
    return 0;
}123456789

调试结果:
————————————————
版权声明:本文为CSDN博主「骑着猪猪上高速」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/s978697043/article/details/82429802

VS2013 C++ 生成与调用DLL(动态链接库) 需要验证的更多相关文章

  1. VS2013环境生成和调用DLL动态链接库

    http://blog.csdn.net/u010273652/article/details/25514577 创建动态库方法: 创建动态库是生成 .dll .lib 两个个文件 文件 -> ...

  2. VS2013 c++ 生成和调用DLL动态链接库(.def 方法已验证OK)

    转载:https://blog.csdn.net/zhunianguo/article/details/52294339 .def 方法 创建动态库方法: 创建动态库是生成 .dll .lib 两个个 ...

  3. VS2015环境下生成和调用DLL动态链接库

    一.生成动态链接库: 1.打开VS2015->文件->新建->项目->Visual C++->Win32->Win32控制台应用程序->将名称改为dll_ge ...

  4. C#中调用Dll动态链接库

    C#中调用Dll动态链接库 起始 受限于语言的不同,我们有的时候可能会用别人提供的函数及方法 或者其他的什么原因.反正就是要调!!! 恰巧别人所使用的的语言跟自己又不是一样的 这个时候想要调用别人的函 ...

  5. 在vs2013下手把手创建/调用dll

    body { font: 16px } 参考了大佬的文章 首先,体会一下静态编译: 创建Win32Project,选DLL,添加一个.h和.cpp文件 点击生成解决方案,然后去debug目录下拷贝.l ...

  6. Windows下C语言调用dll动态链接库

    dll是windows下的动态链接库文件,下面记录一下在windows下如何调用C语言开发的dll动态链接库. 1.dll动态链接库的源代码 hello_dll.c #include "st ...

  7. Python调用DLL动态链接库——ctypes使用

    最近要使用python调用C++编译生成的DLL动态链接库,因此学习了一下ctypes库的基本使用. ctypes是一个用于Python的外部函数库,它提供C兼容的数据类型,并允许在DLL或共享库中调 ...

  8. c#下调用dll动态链接库[转]

    C# 调用传统的 API 动态链接库,是.NET开发经常被讨论的问题. 比如有这么一个动态链接库(delphi 语言): library DelphiDLL; uses SysUtils, Class ...

  9. VBA 调用DLL动态链接库

    在ArcMap中引用动态链接库       我在VB6下编译生成了一个动态链接库文件VBAPrj.dll,其中有一类模块VBACls,此类模块有一个方法Test(Doc As Object).     ...

随机推荐

  1. Go测试开发(一) 怎么写Go代码

    安装过程略过,网上搜一大把. 介绍 本文会在一个module中开发一个简单的Go package. 同时介绍go tool(也就是go命令行). 以及如何fetch,build和install Go的 ...

  2. 微服务实战SpringCloud之Spring Cloud Feign替代HTTP Client

    简介 在项目中我们有时候需要调用第三方的API,微服务架构中这种情况则更是无法避免--各个微服务之间通信.比如一般的项目中,有时候我们会使用 HTTP Client 发送 HTTP 请求来进行调用,而 ...

  3. Jmeter简单操作 取样器 ,监听器

    1.创建线程组 1.2 (1)  线程组主要包含三个参数:线程数.准备时长(Ramp-Up Period(in seconds)).循环次数. (2) 线程数:虚拟用户数.一个虚拟用户占用一个进程或线 ...

  4. javascript面试题(一)

    1. var bar = null; console.log(typeof bar === 'object'); //logs true! 尽管 typeof bar === "object ...

  5. Agumaster添加股票日交易爬虫画面

  6. 使用java.io.RandomAccessFile更改文本文件的内容

    原文本内容: 2020-01-21 08:31:08.520 [main] INFO logbackCfg.App -秦时明月汉时关 2020-01-21 08:31:08.521 [main] ER ...

  7. python中一次性input3个整数,并用空格隔开怎么表示

    a,b,c=map(int,input('请输入3个整数用空格隔开:').split(' ')) map的使用方法:map(函数名,循环体)

  8. 乔悟空-CTF-i春秋-Web-Backdoor

    2020.09.05 每次遇到不会的,想两分钟就放弃了,直接奔wp,一看wp发现,wc,就这?我怎么没想到--心里想着下道题一定自己想,不看wp,然后周而复始

  9. PHP相关的书签内容

    ThinkPHP函数详解 session方法 --ThinkPHP 开源PHP框架 ThinkPHP实现支付宝接口功能 - /折磨 - 博客园 php几个常用的概率算法(抽奖.广告首选) - 懒人技术 ...

  10. CAS导致的ABA问题以及解决方案

    CAS算法实现一个重要前提需要取出内存中某时刻的数据,而在下时刻比较并替换,那么在这个时间差类会导致数据的变化. 上篇文章讲到CAS会出现一个ABA问题.那什么是ABA问题呢? 官方一点的解释就是:当 ...