这个dll要在VC2008下编译!
在网上找到一个事例http://blog.csdn.net/codehat/archive/2009/08/12/4439465.aspx但是这里面的那个GetMyDllVersion函数是没有带参数的,即不是GetMyDllVersion(int x,int y)这种形式。按照那个不带参数编译出来的dll,用另一种语言调用此dll中的GetMyDllVersion函数没有问题,但是带了参数就不能调用。不知道,如果函数带了参数,这种情况的dll该怎么写?希望高手指点!
在网上找到一个事例http://blog.csdn.net/codehat/archive/2009/08/12/4439465.aspx但是这里面的那个GetMyDllVersion函数是没有带参数的,即不是GetMyDllVersion(int x,int y)这种形式。按照那个不带参数编译出来的dll,用另一种语言调用此dll中的GetMyDllVersion函数没有问题,但是带了参数就不能调用。不知道,如果函数带了参数,这种情况的dll该怎么写?希望高手指点!
解决方案 »
- SDI中,在默认的Cview里面动态创建了一个CformView,但是显示出来的Cformview里的按钮什么全是灰的,添加消息也不管理
- 如何获取对话框中第二个edit框???
- 用WriteFile向磁带设备写数据产生参数错误(错误码87)
- SDK方式的画线程序的问题
- MFC如何实现鼠标点击,然后图片替换?
- 期待高手中...一个不太简单的删除触发器。
- 用TAB在控件之间移动输入焦点??????
- 如何调用DestroyWindow获取强制退出程序信息?
- ADSL 拨号上网问题(内部网代理) 急急急!!!
- 在原有的vc workspace里添加一个新project,居然导致原有的project build出错,为什么?请大家帮忙,谢谢!
- 设置文件最后访问时间出错
- XTP高手请进
MYDLLTEST_API UINT32 GetMyDllVerion(int x,int y)
{
return x+y;
}
MYDLL_API int fnMYDLL(void);
MYDLL_API int MaxNumber(int y,int x);而在MYDLL.cpp文件里我写了以下代码
MYDLL_API int fnMYDLL(void)
{
return 42;
}
MYDLL_API int MaxNumber(int x,int y)
{
if (x>y)
return x;
return y;
}在导出符号定义的文件里我填的是如下内容
LIBRARY "MYDLL"
EXPORTS
MaxNumber
fnMYDLL在编译生成dll文件后,我在易语言里使用LoadLibraryA、GetProcAddress进行调用写的上面两个函数,只有fnMYDLL调用成功,而MaxNumber怎么也调用不成功,总是提示调用函数发生堆栈错误!也就是说,函数带了参数就调用出错,我不知道上面的哪一步写错了,希望贵人指点!
函数没加extern "C" __stdcall