动态链接库使用.def导出一个c++类的函数

1、导出函数的参数为char*时候,调用规约要使用__stdcall,使用__cdecl会报错。他们最大的区别就是__cdecl是由调用函数者释放堆栈,而__stdcall由被调用者释放。

2、给win32程序添加.def的时候,要在项目属性-》连接器-》输入-》模块定义文件 里面添加你的def,才没有乱七八糟前缀的导出函数。

比如:

创建一个EnableKeyboard.def文件,里面包含下面内容,就是导出类里的Keyboard_Enable函数。

LIBRARY"keyboardenable"
EXPORTS
Keyboard_Enable


导出后可以使用depends.exe来查看导出函数。

你可能感兴趣的:(编程)