注:笔者使用的VS版本为2019。
1.打开VS2019,选择文件 -> 新建 -> 项目
2、选择项目
新建项目时选择C++“控制台应用”
语言:C++
平台:Windows
项目类型:空项目
3、添加C++代码
源文件 -> 添加 -> 新建项 -> C++文件(.cpp)
C++代码如下
#include <iostream> using namespace std; int Add(int a, int b) { return a + b; }
4、添加模块定义文件
源文件 -> 添加 -> 新建项 -> 模块定义文件(.def)
添加代码如下
LIBRARY Project1.dll EXPORTS Add
项目目录结构如下
5、生成dll文件
1)设置生成文件类型
2)选择C++项目右键 -> 生成,生成成功之后在Debug文件夹中获得Project1.dll文件
6、WPF调用C++生成dll类库文件
1)把Project1.dll文件复制到WPF项目目录inDebug下
2)添加命名空间
using System.Runtime.InteropServices;
3)添加C#代码如下
[DllImport("Project1.dll", EntryPoint = "Add", CallingConvention = CallingConvention.Cdecl)] public static extern Int32 Add(int a, int b); private void ButtonVCDLL_Click(object sender, RoutedEventArgs e) { int ret = Add(1, 2); }
7、WPF运行结果
8、源码下载:WPF调用VC动态库.zip 点击下载