社区
Delphi
帖子详情
delphi写DLL ,返回变量为strilglist,问如何写调用才不会出错
williamljy
2003-12-07 09:47:34
返回变量为strilglist,问如何写调用才不会出错
...全文
27
4
打赏
收藏
delphi写DLL ,返回变量为strilglist,问如何写调用才不会出错
返回变量为strilglist,问如何写调用才不会出错
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Seahilly
2003-12-07
打赏
举报
回复
TStringList是一个可以其实例独立存在的类,着与TStrings不同。如果你的从DLL的函数中返回一个TStringList的实例(实际是指针),那么,我个人认为:
1、在发出调用的程序中要预先说明一个TStringList变量,如:
Var TheStringList; TStringList;
2、发调程序执行DLL函数调用:
TheStringList:=DLL_StringListFunction(......);
3、在发调程序执行DLL函数调用后,所有引用使用TheStringList,不能在调DLL函数,因为你每次调用都会引起“DLL函数”重新构造一个TStringList对象实例,而上次建立的实例就被丢弃了(找不到,还会引起内存泄露)。
Seahilly
2003-12-07
打赏
举报
回复
对不起,前贴有几个错字:
TStringList是一个类,它的实例可以独立存在,这与TStrings不同。如果你是从DLL的函数中返回一个TStringList的实例(实际是指针),那么,我个人认为:
1、在发出调用的程序中要预先说明一个TStringList变量,如:
Var TheStringList; TStringList;
2、发调程序执行DLL函数调用:
TheStringList:=DLL_StringListFunction(......);
3、在发调程序执行DLL函数调用后,所有的引用都要使用TheStringList,不能再调DLL函数(除非你又需要一个新的实例),因为你每次调用都会引起“DLL函数”重新构造一个TStringList对象实例,而上次建立的实例就被丢弃了(找不到,还会引起内存泄露)。
tonylk
2003-12-07
打赏
举报
回复
用runtime bpl
或者sharemm。
21stboy
2003-12-07
打赏
举报
回复
关注!
Delphi
下
写
DLL
大全
Delphi
制作
DLL
一
Dll
的制作一般步骤 二 参数传递 三
DLL
的初始化和退出清理[如果需要初始化和退出清理] 四 全局
变量
的使用 五
调用
静态载入 六
调用
动态载入 七 在
DLL
建立一个TForM 八 在
DLL
中建立一个...
Delphi
中制作
DLL
中回调函数的应用
Delphi
中制作
DLL
•一
Dll
的制作一般分为以下几步: 1 在一个
DLL
工程里
写
一个过程或函数 2
写
一个Exports关键字,在其下
写
过程的名称。不用
写
参数和
调用
后缀。 二参数传递 1 参数类型最好与window C++的参数类型一致...
《
Delphi
深度编程及其项目应用开发》PDF书及代码
5.2.2 Exports关键字的使用 5.2.3
DLL
中的
变量
5.2.4
DLL
实例:动态
DLL
中的窗体 5.3
DLL
的
调用
5.3.1 静态
调用
5.3.2 动态
调用
5.4
DLL
的入口函数和出口函数 5.4.1 进程/线程的初始化和例程的终止 5.4.2
DLL
入口/...
c#
调用
delphi
写
的
dll
遇到并解决的
问
题
c#
调用
delphi
写
的
dll
,需要以一级指针、二级指针作为参数传递。
Delphi
中
调用
.net
dll
3、为了便于在
delphi
中对相关方法使用,主要是:传递对象
变量
到一个
dll
函数中,以及接收
dll
返回
的对象,在第2步注册的时候增加/tlb参数,生成
dll
的tlb文件,在
delphi
中增加这个类型库应用,如下图: 这里有几...
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章