在C++中,通常我们这样去调用,首先添加头文件路径和库文件路径并且将dll文件复制在输出目录下,然后在程序中添加一行代码,#pragma comment(lib, "mylib.lib"),接着就能正常调用了,但在打包之后就不行了。其实UE4有自己的一套调用Dll的方法,他通常用C#去管理上面的一堆事情。
那么我们要在UE5里面去调用第三方库该如何实现呢,其实和C++的调用逻辑差不多
首先准备好必要的三个文件,.h,.lib和.dll,然后用C#语言去告诉编译器我们的.h和.lib两个文件的路径,将dll文件放在输出目录下,最后在项目中引入头文件就能正常调用了
程序源码和打包后的项目
链接:https://pan.baidu.com/s/107PXU2PLVfyjPtRpLL7_-g
提取码:5678

下面我来演示一下具体的调用过程(用的是UE5和vs2022,其他版本也行,也适用ue4)
这只是一种方法,还有其他方法,比如做成模块,做成插件,再如动态调用,但我个人认为我下面的静态调用是我感觉最好用的方法
一.创建DLL库文件
我直接创建了一个空项目,项目属性改成了DLL,里面只有两个文件,一个.h和一个.cpp,具体代码如下,最后会生成三个所需的文件


//dll1.h
#ifndef DLL1_H
#define DLL1_H
#define FENGZHUANGCPP_API __declspec(dllexport)
class FENGZHUANGCPP_API Face
{
public:
static Face* CreateFace();
virtual int Add(int a,int b) = 0;
virtual int num(int a) = 0;
};
#endif

本文介绍了在UE5中如何调用C++第三方库的完整流程,包括创建DLL库文件、在UE项目中引入库文件、配置C#代码以及测试和打包。通过创建一个简单的DLL示例,展示了从修改头文件、设置路径到打包后手动添加DLL的过程,适合UE4和UE5开发者参考。
最低0.47元/天 解锁文章
6255





