C#调用C++ DLL

C#调用C++ DLL

编码文章call10242025-05-13 19:37:204A+A-



前言

很多人说,C#底层太难了,今天搞个简单点的。看下如何通过最简单的方式C#调用C++写的DLL。以VS2022为蓝本。

C++

首先新建一个具有导出项的C++ DLL动态链接库项目,用其它的项目新建,比如动态链接库DLL项目,或者空项目或有各种问题。打开VS2022,选择如下图所示:

取名叫Dll1,项目建好了之后,结构如下图:

右击源文件-》添加-》新建项-》文件名:FileName.cpp,源文件文件夹下多了一个FileName.cpp的C++文件。其它文件是默认创建的,不用管它。

FileName.cpp添加如下代码

#include "pch.h"

extern "C" __declspec(dllexport) int Add(int x, int y){#ifdef _DEBUG return x;#else return y;#endif}

把Dll1项目生成下,.../x64/Debug目录下找到Dll1.dll。就是生成好的C++ DLL了。不需要任何设置。

C#

新建一个C#控制台应用程序,代码如下:

namespace ConsoleApp1{ public class Test { [DllImport("E:\\Visual Studio Project\\Test_\\x64\\Debug\\Dll1.dll")] public static extern int Add(int a, int b);
internal class Program { static void Main(string[] args) { Console.WriteLine(Add(33, 2)); Console.ReadLine(); } } }}

DllImport里面包含的即是上面C++生成的Dll1的路径。

调用结果如下:

以上为最简单的C#调用C++ DLL的过程,全程不需要任何库文件,以及编译方面的设置


点击这里复制本文地址 以上内容由文彬编程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

文彬编程网 © All Rights Reserved.  蜀ICP备2024111239号-4