找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 17|回复: 0

delphi封装的回调函数DLL

[复制链接]

32万

主题

0

回帖

96万

积分

超级版主

积分
964681
发表于 2024-12-6 05:09:48 | 显示全部楼层 |阅读模式
软件标签:  dll   delphi函数
用delphi封装的调用回调函数的dll,内有delphi源代码,请使用delphi7进行编译。
说明:
dll中的输出函数的调用风格不是cdecl,而是pascal风格(windowsapi多采用这种),通过反汇编moto_srv.dll,发现几个函数的尾部都是retn的方式返回,即由被调用者负责清理堆栈,而不是cdecl的由调用者通过add esp, n的方式清理堆栈。以上是主要问题,改正方法是把函数原型定义的cdecl去掉,或者改写为pascal(缺省如此,直接去掉cdecl同此);次要问题(或许不是问题),在display中,先不要访问vcl等有关窗体的资源,用writeln输出到屏幕,或者保存到一个文件,看看是否成功。


aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|ziyuan80.com

GMT+8, 2025-8-11 01:59 , Processed in 0.067847 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表