摸索了两天了,终于解决了所有问题,在此跟大家分享。
需要三个文件,dll_demo.h、dll_demo.cpp、dll_dome.def
直接上代码:
头文件如下:
1
2
3
4
5
6
7
8
9
|
#ifndef _DLL_DEMO_H_
#define _DLL_DEMO_H_
#ifdef DLLDEMO_EXPORTS
#define DLL_DEMO extern "C" __declspec(dllexport)
#else
#define DLL_DEMO extern "C" __declspec(dllimport)
#endif
DLL_DEMO int __stdcall Add( int a, int b);
#endif
|
源文件:
1
2
3
4
5
6
7
|
#define DLLDEMO_EXPORTS
#include "dll_demo.h"
int __stdcall Add(int a, int b)
{
return (a + b);
}
|
def文件:
1
2
3
|
LIBRARY
EXPORTS
Add @ 1
|
函数需要声明为 stdcall调用方式才能被易语言调用,def文件的主要作用为解决使用stdcall方式后函数名被改变的问题。在vs2013中引入def文件需要手动在工程属性,链接器,输入,模块定义文件中添加。
总结:以上就是关于C++写DLL让易语言调用的全部方法和代码,感谢大家的阅读和对服务器之家的支持。