没有合适的资源?快使用搜索试试~ 我知道了~
Delphi下写DLL大全
3星 · 超过75%的资源 需积分: 3 23 下载量 139 浏览量
2012-06-14
15:51:09
上传
评论
收藏 56KB DOC 举报
温馨提示
试读
23页
Delphi制作DLL 一 Dll的制作一般步骤 二 参数传递 三 DLL的初始化和退出清理[如果需要初始化和退出清理] 四 全局变量的使用 五 调用静态载入 六 调用动态载入 七 在DLL建立一个TForM 八 在DLL中建立一个TMDIChildForM 九 示例: 十 Delphi制作的Dll与其他语言的混合编程中常遇问题: 十一 相关资料
资源推荐
资源详情
资源评论
Delphi 下写 DLL 的文章
制作
一 的制作一般步骤
二 参数传递
三 的初始化和退出清理如果需要初始化和退出清理
四 全局变量的使用
五 调用静态载入
六 调用动态载入
七 在 建立一个
八 在 中建立一个
九 示例:
十 制作的 与其他语言的混合编程中常遇问题:
十一 相关资料
一 的制作一般分为以下几步:
在一个 工程里写一个过程或函数
写一个 关键字,在其下写过程的名称。不用写参数和调用后缀。
二 参数传递
参数类型最好与 的参数类型一致。不要用 的数据类型。
最好有返回值即使是一个过程,来报出调用成功或失败,或状态。成功或失败的返回值最好为 成功或 失败
一句话,与 兼容。
!用 stdcall 声明后缀。
"最好大小写敏感。
#无须用 $% 调用后缀,那只是为了与 & 位程序兼容。
三 的初始化和退出清理如果需要初始化和退出清理
'() 单元的一个 是 的入口。在此你可用你的函数替换了它的入口。但你的函数必须符
合以下要求其实就是一个回调函数。如下:
*+,%-./,01$%1 %1
,% 参数有四种类型:
2,/''233-进程进入时
2,/''23-进程退出时
2,3233-线程进入时
2,323-线程退出时
在初始化部分写-
4 -561
4+2,/''23301
如 7 上有 7 组件8就 )3 98在初始化时写一句 %:+01
!在退出时一定保证 7 -5%8并且数据集已关闭。否则报地址错。
四 全局变量的使用
在 ! 位程序中,两个应用程序的地址空间是相互没有联系的。虽然 在内存中是一份,但变量是在各
进程的地址空间中,因此你不能借助 的全局变量来达到两个应用程序间的数据传递,除非你用内存映像文件。
五 调用静态载入
客户端函数声名-
0大小写敏感。
0与 中的声明一样。
44如: $7+$7-$701%1%;(< 2;1
!0调用时传过去的参数类型最好也与 一样。
"0调用时 必须在 搜索路径中,顺序是:当前目录;% 路径;1=
(71=(7!1
六 调用动态载入
建立一种过程类型(或者是一个 * )如果你对过程类型的变量只是一个指针的本质清楚的话,你就知道是
怎么回事了。如:
(
447(5 *+$7-$701%1%1
44>>7(5$* +$7-$701%1%1
9%
4-%1
4$7-7(1
?@
44-5%?%(+;(< 2;01>>% 一个 8按文件名找。
44$7-5@ %+8;$7;01>>按函数名找,大小写敏感。如果你知道自动化对象的本质就
清楚了。
4$7+% %7%$701>>找到函数入口指针就调用。
4?%(+01
1
七 在 建立一个
把你的 7) 到 中,你的 7 用到的关联的单元也要 ) 进来这是最麻烦的一点,因为你的 7
或许 ) 了许多特殊的单元或函数
传递一个 3 % 参数,用它建立 7
八 在 中建立一个
中的 77'( 不用为 $7
在 %7 后写以下两句:
$* '7+7%7-70-@1 %
9%
47-71
4-@1
?@
4-56+3 %%701>>先把 的 %7 句柄保存起来,也无须释放,只不过是替换一下
4A-5@+7%701>>用主调程序的 7%7 替换 的 %7。%7 是特殊的
.B/.,它专门管理 3 % 中的 7 资源
>>为什么不直接 3 %%7-57%78因为 3 %%7 是只读属性
47-57%+7%701>>用参数建立
1
备注:参数是主调程序的 3 %%7
九 示例:
源代码:
?%(< 1
*
4'()8
4%8
4%@8
478
4);)%;C7D1
CE,F,'D
9%
4 - %1
*/7+7%7-701 %1
9%
47-71
4-@1
?@
4-56+3 %%701
4A-5@+7%701
47-57%+7%701
1
**+- %01 %1
?@
4 -51
1
*'1 %1
?@
4'%@+'@+ 001
1
4/71
4*8
4'1
?@
调用方源代码:
*)1
$%
*
4.8%@8'()8%8G% 8878%@8
4'1
(
475 %+70
44H*-H*1
44H*-H*1
44-1
44 *H* I+'-/?< 01
44 *H* I+'-/?< 01
49%
44C9% %%D
4*?
44C*? %%D
41
9%
47-71
77%
CE,FD
*/7+7%7-701 %1%;< ;1
*'1 %1%;< ;1
剩余22页未读,继续阅读
资源评论
- phpscott22013-10-18都是很粗略的简介 没什么用
jelk2888
- 粉丝: 16
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功