导出Typdef函数指针到DLL
exporting typdef function pointer to dll
我正在进行一个练习,该练习为我提供了一个声明多个功能的标头文件,并要求我创建一个将动态加载的DLL,该DLL可以导出这些功能。对我来说,困难的部分是标题文件将函数声明为功能指针,这确实使我感到困惑。这是一个人的方式:
typedef int32_t* (__stdcall* T_func)(int32_t* a);
说明说我的dll应该导出函数" func",我可以做到,但是我希望只要DLL实现界面(如上图)。
。我无法创建一个函数t_func,因为它是一个Typedef,并且我无法使用T_FUNC类型创建称为func的函数。我对应该如何根据他们给我的内容来声明功能感到困惑。创建一个称为func的函数,具有与T_FUNC相同的输入和返回类型的函数?
您只是在dll中声明函数为:
int32_t* __stdcall func(int32_t* a);
然后,在客户端代码中,您可以使用以下方式进行innamine Binationde Binationdeby
T_func pFunc = (T_func)GetProcAddress(hModule, "func");
这是Typedef派上用场的地方。DLL代码不使用它。
update :您的问题是标记为C ,您可能需要定义为extern "C"
的函数,否则您将获得C 杂乱无章的名称。而且由于您可能正在使用MS-Windows
extern "C" {
declspec(dllexport) int32_t* __stdcall func(int32_t* a);
}
相关文章:
- Visual c ++,使用字符串引用/指针调用 dll 函数
- 读取进程内存多级指针(DLL 注入)
- 函数指针分配在创建 DLL 后导致错误
- 正在从jvm.dll获取FindClass函数指针
- DLL 导出导致唯一指针出现问题
- 全局外部指针变量在 DLL 中不可见
- 如何使用指针作为参数在 C# 中包装C++ DLL?
- 使用指针调用C++ DLL 函数
- 访问违规读取位置传递指针以在c中写入的DLL中起作用
- 将指向对象的指针传递给 dll
- 如何从C DLL返回的指针中获得VBA中的整个矩阵
- 如何将函数指针从 C# 传递到C++ Dll
- 在多个线程中使用 DLL 函数指针
- 当参数之一是指针数组时,如何从C#调用C DLL
- 通过功能指针通过DLL进行回调功能,运行时检查失败#0错误
- 使用抽象接口C++ dll 边界 -标头中的智能指针>?叫删除?
- DLL函数导出一个指针做Delphi程序
- 当从一个应用程序调用时,在DLL方法中创建COM接口指针是有效的,但当从另一个应用软件调用时则无效
- 从CUDA中的指针加载图像并导出dll
- 通过指针值将数据传递到DLL