简单的DLL调用问题,急。

ntcxh 2005-08-10 05:20:18
在DLL中定义了如下函数:
extern "C" _declspec(dllexport) int PlusNum(int x,int y)
{
return x+y;
}

在调用时语句如下:
if(ComboBox1->Text == "两数相加")
{
int x1 = StrToInt(Edit1->Text);
int y1 = StrToInt(Edit2->Text);
Edit3->Text = IntToStr(PlusNum(x1,y1));
}
出错信息如下:
[Linker Error] Unresolved external '_PlusNum' referenced from E:\DLLTEST\SAMPLES\APPUNIT1.OBJ
请问各位高手,该怎么样解决。
...全文
156 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
有哥 2005-08-11
  • 打赏
  • 举报
回复
可能的原因:
1、没装载动态链接库
2、没在Unit中声明要从动态链接库中调用的函数原型
3、所编译的DLL使用时要求在导出函数名前加 _ 作前缀

最有可能的原因是第2种
ntcxh 2005-08-11
  • 打赏
  • 举报
回复
怎么没有愿意答复啊。
zhu_005 2005-08-11
  • 打赏
  • 举报
回复
定义成extern "C" _declspec(dllexport) int _stdcall PlusNum(int x,int y)
试试
ntcxh 2005-08-11
  • 打赏
  • 举报
回复
第一、二种我都做了,第三种可能没做。但试过,结果一样。

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧