1.新建C++项目
A.添加win32的控制台项目,输出dll
B.添加头文件CreateDLL.h
#pragma once
extern "C" _declspec(dllexport) int _stdcall Add(int a,int b);
extern "C" _declspec(dllexport) int _stdcall Reduce(int a,int b );
C.添加 源文件 CreateDLL.cpp
#include <stdio.h>
#include "CreateDLL.h"
int _stdcall Add(int a,int b)
{
return a+b;
}
int _stdcall Reduce(int a,int b)
{
return a-b;
}
D.添加源文件CreateDLL.def
LIBRARY "CreateDLL"
EXPORTS
Add @ 1
Reduce @ 2
E.编译找到dll
2.新建C#控制台项目
[DllImport(@"E:\LYK\Work\CSharpCallDLL\Debug\CreateDLL.dll")]
extern static int Add(int a, int b);
[DllImport(@"E:\LYK\Work\CSharpCallDLL\Debug\CreateDLL.dll")]
extern static int Reduce(int a, int b);
static void Main(string[] args)
{
int r1 = Add(11, 22);
int r2 = Reduce(15, 32);
Console.WriteLine("test01结果:" + r1.ToString());
Console.WriteLine("test02结果:" + r2.ToString());
Console.ReadKey();
}
3.源代码地址 https://download.csdn.net/download/liaoyukun111/10548015
4.参照地址:https://blog.csdn.net/big_wang5/article/details/8216557