用Delphi写Dll时遇到的问题

fliman 2003-08-30 03:40:58
我在用Delphi写一个dll时用动态调用的方法调用函数时老是出现非法访问的错误,我一直搞不懂为什么,那天我把dll中的

function Plus(x,y:integer):integer;stdcall

改成:
function Plus(x,y:integer):integer;
就没再出现非法访问的错误了,真是搞不懂为什么。同样的申明我用静态调用时就没错呀,为什么动态调用要去掉stdcall的申明?

我用的是delphi 7 ;windows xp professional
...全文
45 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fliman 2003-08-30
  • 打赏
  • 举报
回复
to:(StevenLee)调用时在哪加stdcall,我是动态调用呀?难道是

TFUN=function(x,y:integer):integer;stdcall;

??
fliman 2003-08-30
  • 打赏
  • 举报
回复
怪就怪在加上stdcall反而会出错,去掉却对了。可是用静态调用的话加上stdcall才对,不加又出错。
fliman 2003-08-30
  • 打赏
  • 举报
回复
当然要加,省略了。加不加stdcall有什么不同?
编程老猫 2003-08-30
  • 打赏
  • 举报
回复
调用的时候和dll中都要加上stdcall
FrameSniper 2003-08-30
  • 打赏
  • 举报
回复
哦?你后面不加Export也可以调用?
fliman 2003-08-30
  • 打赏
  • 举报
回复
up
fliman 2003-08-30
  • 打赏
  • 举报
回复
up
fliman 2003-08-30
  • 打赏
  • 举报
回复
用LoadLibrary;GetProAddress调用Plus函数。
76liujing 2003-08-30
  • 打赏
  • 举报
回复
你的动态调用是什么意思?
fliman 2003-08-30
  • 打赏
  • 举报
回复
各位高手解答一下

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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