为了防止步骤上的失误,造成不成功,我尽量每一步的过程都写清楚

一、生成DLL

1.创建dll工程

2.编写dll函数

经过上述过程后工程中会生成几个自带的文件,可以自行创建或者更名,我直接在上面进行编写了。

如下我先在pch.h中创建我需要调用函数的声明,他们分别用于实现加法和取最大值的功能,你可以根据自己的需求更改成自己的子程序。

// pch.h: 这是预编译标头文件。
// 下方列出的文件仅编译一次,提高了将来生成的生成性能。
// 这还将影响 IntelliSense 性能,包括代码完成和许多代码浏览功能。
// 但是,如果此处列出的文件中的任何一个在生成之间有更新,它们全部都将被重新编译。
// 请勿在此处添加要频繁更新的文件,这将使得性能优势无效。#ifndef PCH_H
#define PCH_H// 添加要在此处预编译的标头
#include "framework.h"
extern "C" _declspec(dllexport) int myAdd(int a, int b);
extern "C" _declspec(dllexport) int myMax(int a, int b);
#endif //PCH_H

然后再phc.cpp文件中编写你的函数功能,如下所示

// pch.cpp: 与预编译标头对应的源文件#include "pch.h"  // 这里放了你函数的声明// 当使用预编译的头时,需要使用此源文件,编译才能成功。
#include<iostream>
using namespace std;
int myAdd(int a, int b)
{return a + b;
}int myMax(int a, int b)
{return a > b ? a : b;
}

最后一步就是要生成dll和lib,只需要运行——生成解决方案,即可

由于上述解决方案生成时是在debug模式下的,因此你可以在工程项目的debug目录下找到所生成的dll和lib

二、调用DLL

1.创建一个空的工程项目,创建主程序调用上述的函数

/*main*/
#include<iostream>
#include"pch.h"
using namespace std;int main()
{int a = myAdd(5, 4);cout << a << endl;int b = myMax(5, 4);cout << b << endl;return 0;
}

2.添加函数的头文件以及dll和lib

将上一节生成的dll以及dll添加到现在的工程目录下,包括头文件

 3.容易漏掉的一步,记住千万要把你的添加的lib文件名加入到附加依赖项中,否则会报错。

3.运行程序.

vs2019生成dll,并调用相关推荐

  1. VS2019生成DLL

    1 .生成DLL 1.1 新建dll工程 1.2 编写dll函数 首先在头文件中进行函数声明,将一个函数声名为导出函数,就是说这个函数要被其他程序调用,即作为DLL的一个对外函数接口.通常它和exte ...

  2. vs2019生成dll文件及(C#)使用

    vs2019 生成dll文件及使用 一.c++生成dll文件 32位Dll生成 64位dll生成 注意 c#程序dll使用 一.c++生成dll文件 32位Dll生成 打开vs2019,建立c++的d ...

  3. .NET在VS2008中生成DLL并调用

    1.生成DLL 打开VS2008 - >新建->项目->类库->ClassLibrary1,在ClassLibrary1中会自动创建一个Class1类 class1中加入代码如 ...

  4. VB .bas文件生成dll并且调用

    一.生成dll. 有时候我们会将一些核心算法之类的东西放在单独一模块中(.bas文件),这些算法我们不想让别人知道,所以我们可以把它封装成DLL文件,增强代码的安全性,然后再调用这些已经写好的接口. ...

  5. VS生成dll,调用dll无法解析

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 前言 VS生成DLL工程,并调用 提示:以下是本篇文章正文内容,下面案例可供参考 一.dll工程 1.dll(动态链接库),把已有的V ...

  6. VS2017 生成DLL 供python 调用

    今天突然想到python调用C++的问题,其中碰到了很多坑,最后终于弄好了,写博客来记录一下,以免忘记了: VS2017生成DLL python调用 VS2017生成DLL 1.新建项目->wi ...

  7. C#【必备技能篇】VS2019 使用C/C++ 生成DLL 文件,并用 C/C++、C#调用DLL

    文章目录 前言 一.生成dll 新建项目-C++-动态链接库(DLL) 项目-右键-属性-C/C++-预编译头:不使用预编译头. 项目-右键-属性-C/C++-高级:编译为:C.(也可以不更改,默认就 ...

  8. c 调用java的dll_Windows下java调用c的dll动态库--Dev_Cpp编译c生成dll

    1.eclipse下建立一个HelloJNI.java内容如下: package JNI; public class HelloJNI { static { System.out.println(&q ...

  9. matlab程序生成.dll,matlab 调用fortran生成DLL

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 版本:matlab 2010b,vs2008+IVF11.0 对于简单的问题,例如求个c=a+b的,用vs2008+IVF11.0生成DLL和用matla ...

最新文章

  1. Marcin Grzejszczak访谈:Spring Cloud Contract
  2. Autodesk Maya 2019中文版
  3. [MySQL] MySQL的自己主动化安装部署
  4. pycharm无法识别css,PyCharm中HTML页面CSS class名称自动完成功能失效的问题
  5. tomcat +apache 配置集群
  6. 前后端分离djangorestframework——序列化与反序列化数据
  7. Mybatis入门(一)
  8. 游戏安全报告(2017 - 2018全年)
  9. Android 系统开发系列一
  10. 计算机专业英语影印版试题,计算机专业英语(2008影印版)复习资料
  11. leetcode刷题记录(32)-简单
  12. 简单实现手机号验证码注册功能
  13. 重磅!上海985教授当选!全球仅4人!
  14. 基于 SpringBoot + MyBatis-Plus 的公众号管理系统
  15. 我彻底服了,大牛讲解信号与系统(通俗易懂)
  16. 周周周报报报(药店管理系统)
  17. 抄底绝招:底部大阳!
  18. 西游记原来是这么读的
  19. 20220722_JavaWeb最终案例
  20. 初识数据编码,从 0 开始的进阶之路 ! ~ 内附:植物大战僵尸修改游戏存档、金币 演示~

热门文章

  1. html 导出excel 列被合并,前端实现导出excel单元格合并和调整样式
  2. 15 个 “高效实用” 的Python工具库!
  3. Kolmogorov-Smirnov test 详细介绍
  4. 字符串(字符串的拼接及一些常用方法)
  5. 各厂家linux面板对比
  6. 遍历列表的两种常见方式
  7. Oracle表数据转换为XML格式数据
  8. 联想拯救者isk15安装固态硬盘记录
  9. Android 底层知识拾零,字节跳动Android高级工程师
  10. 使用Quartus II9.0验证74161计数器