100分:帮我看看这个函数对不对。(100分)

A

abc516

Unregistered / Unconfirmed
GUEST, unregistred user!
函数原型:
int ReadInfo_aPackage_VC(BYTE port,int package,char info[4096])
int ReadInfo_aPackage_VB(BYTE port,int package,char info[4096])
参数:port:系统所使用的计算机串口号
package:所要读信息的页号(0开始计数)
info:放置读取的信息
返回值:>0 从该页中读取信息的条数
=0 该页中没有巡检信息
<0 读该页巡检信息失败
说明1:中记录的信息每条12字节(6字节TM卡号+6字节时间:秒、分钟、小时(0到23)、日、月、年)。本函数将其转化为ASCII保存在info中,在info中每条信息占用24字节。信息在info中依次记录。
说明2:本函数将信息转化为ASCII保存的规则:例如信息:05年12月1日8点35分28秒,卡号为025178448a82,其在info0和info1中记录的格式字串为: “025178448a82283508011205”

这是一个DLL里的函数。
function ReadInfo_aPackage_VB(port:BYTE;package:integer;info:array of string): integer;stdcall;external 'Pal.dll';

procedure TForm1.Button8Click(Sender: TObject);
var
inf:array [0..4096] of string ;
i,j:integer;
begin

j:=ReadInfo_aPackage_VB(1,GetInfoPackage_VB(1) ,inf);
for i:=0 to j*12do

begin

memo1.Lines.Add(inf);
end;

end;


怎么MEMO1里没有反应呀,但是人家的DEMO程序里有反应。
 
你这样试一试
function ReadInfo_aPackage_VB(port:BYTE;package:integer;info:array of char): integer;stdcall;external 'Pal.dll';
 
如果:
function ReadInfo_aPackage_VB(port:BYTE;package:integer;info:array of char): integer;stdcall;external 'Pal.dll';

那怎么调用回来呢?
procedure TForm1.Button8Click(Sender: TObject);
var
inf:array [0..4096] of char;
i,j:integer;
begin

j:=ReadInfo_aPackage_VB(1,GetInfoPackage_VB(1) ,inf);
for i:=0 to j*12do

begin

memo1.Lines.Add(inf);
end;

end;


调用回来的东西不对。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
722
import
I
I
回复
0
查看
757
import
I
顶部