如何往DLL中传递字符串数组?(50分)

  • 主题发起人 主题发起人 awfigsk
  • 开始时间 开始时间
A

awfigsk

Unregistered / Unconfirmed
GUEST, unregistred user!
如题!
并且如何从DLL返回字符串数组?
 
type
pTStrArray = ^TStrArray;
TStrArray = array of string;

在主程序和DLL中
定义一个字符串数组和一个指向该数组的指针,把指针作为参数
 
Functin XX(XXX:array of string):类型
begin
.......
end;
调用
var
a:arrary [0..5] of string;
i:integer;
a[0]:='xx';
a[1]:='xx';
i:=XX(a);
 
1.
在主程序和 Dll 的工程单元的引用部分,第一个引用 ShareMem 单元
也就是,调用方和被调用方都必须这样引用,
program MyDll;

uses
ShareMem,
Forms,
......

如果在没有安装 Delphi 的电脑上运行,还必须在当前目录存在 borlndmm.dll 文件,
这个文件在 Delphi 的安装目录里面有。

2.建议把字符串数组参数定义为类型
type
TA = array of String;
 
后退
顶部