C++ DLL导出函数的两种方法(导出序号那种方法,别人看不到函数名)

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ DLL导出函数的两种方法(导出序号那种方法,别人看不到函数名)相关的知识,希望对你有一定的参考价值。

第一种就直接导出函数名如下代码:

#ifdef__cplusplus

#define TEXPORT extern "c" _declspec(dllexport)

#dlse 

#define TEXPORT _declspec(dllexport)

TEXPORT BOOL FUN();//这就是要导出函数

这种方法查看DLL时能看到函数名.

 

第二种是就导出序号如下代码:

bool _stdcall fun();

在工程右键添加新项目点模块定义文件.DEF,

在在DEF文件里写

LIBRARY "DLL名字"

EXPORTS

 fun @1 NONAME

这样导出的函数别人就看不到函数名了.注意序号要顺序写.

调用时要在用的文件里定义#define TEXPORT _declspec(dllimport)   说明函数在DLL里面序号导出的

其它调用都一样了.

http://blog.csdn.net/yjwffgip456/article/details/18702547

以上是关于C++ DLL导出函数的两种方法(导出序号那种方法,别人看不到函数名)的主要内容,如果未能解决你的问题,请参考以下文章

dll导出函数参数可以是引用吗

为啥有的dll里没有导出函数?

如何导出 C# dll 方法/函数以在 C++ 中使用它 [重复]

C++类库隐藏私有属性和方法的两种方式

c++调用dll导出函数

在 C# 中找不到 C++ COM DLL 中的导出函数