vs2019 生成dll文件及使用

  • 一.c++生成dll文件
    • 32位Dll生成
    • 64位dll生成
    • 注意
  • c#程序dll使用

一.c++生成dll文件

32位Dll生成

打开vs2019,建立c++的dll库文件。

命名为“NewDll”。
文件列表如下:

然后在头文件pch.h中,写入代码:

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

在对应的cpp文件中写以下代码:

// pch.cpp: 与预编译标头对应的源文件#include "pch.h"
// 当使用预编译的头时,需要使用此源文件,编译才能成功。
//实现代码
int Add(int a, int b)
{return a + b;
}

点击“生成”->“生成NewDll.dll”。解决方案文件如下:

成功后在方案下的Debug文件下,有以下文件:

其中NewDll.dll是动态连接库,NewDll.lib是静态连接库
注:下图红圈处:

点击查看配置管理器时,如下:

默认是32位的dll,因此生成的dll是不能在64位的程序中调用的。

64位dll生成


在配置管理器将目标平台改为x64位。
点击“生成”->“生成NewDll.dll”。这时解决方案目录下会多个x64的文件。

生成的64位dll文件是放在这里的。

注意

1.32位dll只能在32位程序中调用,64位只能在64位中调用。

2.打开时默认是生成的32位dll,生成后在解决方案的Debug下有此dll。
修改配置管理器的目标平台,可以生成64位的dll,生成后在解决方案的x64文件下有64位的dll。

c#程序dll使用

vs2019生成dll文件及(C#)使用相关推荐

  1. VS2019生成DLL

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

  2. linux 生成dll文件,Linux和Windows平台 动态库.so和.dll文件的生成

    Linux动态库的生成 1. 纯cpp文件打包动态库 将所有cpp文件和所需要的头文件放在同一文件夹,然后执行下面命令 gcc -shared - fpic *.c -o xxx.so: g++ -s ...

  3. vs2012中程序集生成无法自动在网站Bin目录下生成Dll文件?(已解决!)

    最近,突然发现生成程序集后,网站bin目录下dll没有更新,也没有自动生成dll文件,通过近半个小时的摸索和实验,找到了解决方法: 1.右键网站,不是项目,选择[属性页],在左侧[引用]中如果没有,就 ...

  4. VS2008生成DLL文件的方法、引用dll文件以及意义

    一 VS2008生成dll文件的方法     有两种方法:     1:傻瓜式操作     打开VS2008,依次点击:菜单->文件->新建项目->项目类型visual C#(这里假 ...

  5. c++生成DLL文件(visual studio 2019)面向小白萌新

    c++生成DLL文件(visual studio 2019)面向小白萌新 目录 c++生成DLL文件(visual studio 2019)面向小白萌新 前言 如何生成 1.创建dll项目 2.更改我 ...

  6. VS2019制作DLL文件

    用VS2019制作DLL文件的一般步骤很简单: 1创建新项目 2找到动态链接库DLL项目 3创建 4.分别在源文件和头文件添加相关函数f.cpp,f.h 第4步中,f.cpp中是没有主函数的各个函数, ...

  7. C++ dll库只生成dll文件,而未生成lib文件的问题

    C++ dll库只生成dll文件,而未生成lib文件的问题 逐项检查 逐项检查 新建项目时,选择应用程序类型为dll,并勾选"Export Symbols": 属性->链接器 ...

  8. [MATLAB]将.m文件生成dll文件

    环境:VS2017+MATLAB R2017a ①配置编译环境 在命令行窗口中输入"mbuild -setup"(横线前有一个空格),如果出现如下图所示的提示信息即为成功. 如果提 ...

  9. 【DLL】clion生成.dll文件、python调用.dll文件

    最近为了生成以及调用.dll文件,踩了一些雷,记录如下 目录 1.clion中生成.dll 2.clion中测试生成的.dll文件 3.在python中调用.dll文件 [1]导入.dll [2]ct ...

最新文章

  1. 使用多个推理芯片需要仔细规划
  2. 创建自己的人脸识别系统
  3. Dev控件用法 aspxTreeList 无刷新 aspxGridView 数据
  4. 果断收藏!六大主流大数据采集平台架构分析
  5. Visual Studio 2019 使用 Live Share
  6. .NET 页面刷新方式总结
  7. springboot项目整合mybatis
  8. Python 操作redis 常用方法
  9. [译] 使用 python 分析 14 亿条数据
  10. python3记录(1) - 内置函数
  11. Nacos实现环境隔离
  12. 【渝粤教育】国家开放大学2018年秋季 0363-21T市场调查与预测 参考试题
  13. linux下环境变量设置的问题
  14. 树的最长路径详解(C++)
  15. 博客园2013年5月份第2周源码发布详情
  16. 定额中计算机主机工作内容,计算机核定定额的业务操作指引.doc
  17. HDD Regenerator V2.0绿色中文注册版-(令硬盘起死回生)_-Chaz-_新浪博客
  18. 局域网网络流量监控_【网络监控与安全】主要网络流量处理技术
  19. 买投影仪选当贝还是极米,哪个投影仪最好用
  20. 京东单品页前端开发那些不得不说的事儿

热门文章

  1. php判断数组的值是否为空,PHP判断数组(多维数组)值是否为空
  2. 轩小陌的Python笔记-day25 MySQL入门
  3. 微信小程序---JavaScript脚本
  4. shell易错点整理
  5. 高速ad指标分析 matlab,高速ADC的动态性能参数和基于DSP技术的测试方法研究
  6. 删除mysql数据库中某表中的某个字段的数据
  7. 常用颜色及其RGB值
  8. Wannafly挑战赛14 A 直角三棱锥
  9. 第1讲 2.2人机交互
  10. Vultr 修改 Root 账户密码教程