重命名DLL函数?

问题描述

我是否可以命名导出的dll函数?当我使用dll导出查看器时,显示的函数名称是完整的声明。我想使用JNA(JNI)来访问DLL中的函数,并且函数名必须是函数名而不是完整的声明。如果这是重复的,请指出!!

解决方法

如果将函数声明为extern“ C”(或在C文件而不是C ++中实现),则实际上仅使用__declspec(dllexport)语法即可完成(即,没有.def文件)。 / p>

extern "C"
{
  __declspec(dllexport) void __stdcall MyFunc(std::string &);
}

通常比导出带有别名的错误名称要容易得多(因为您随后需要跟踪错误名称以分配别名)。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...