您的位置:首页 > 编程语言 > C语言/C++

易语言调用 vs2010 vc++ 写出的dll带参数 报堆栈错误的问题

2015-05-14 17:14 211 查看
// mydll01.cpp : 定义 DLL 应用程序的导出函数。

//

#include "stdafx.h"

//#include "mydll01.h"

#include<iostream>

 #include<string.h>

 using namespace std;

extern "C"  __declspec(dllexport)  int adda(){

return 10;

}

//返回字符串的函数

extern "C"  __declspec(dllexport)   char * testb(){

 static char url[260] = { 0 };

 strcpy_s(url, "http://中文");

 strcat_s(url, ":");

return url;

}

extern "C"  __declspec(dllexport) int __stdcall  adde(int x,int y){

return x+y;

}

 

头文件都省了,直接cpp文件定义了输出名称和 stdcall  堆栈错误就是因为顺序的问题导致的

 

用depends 软件查看了下函数名,成了
_adde@8 我的天,函数名定义是 adde成了_adde@8 怎么用啊,能凑合用,找了资料纠正了函数名字

新增一个def的文件,

填写

LIBRARY mydll01

EXPORTS

adde

编译查看,名字正常了,调用也没问题了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++
相关文章推荐