医联卡返回时间

function   hdcService(head,body,msg,resultdata:PChar):Integer;stdcall;external 'hdcv1.dll';

 //申明从hdcv1.dll中调用函数hdcservice函数,该函数包括4个参数,其中head和body是传入的xml头部分和主体部分,msg是返回的提示信息,

 //resultdata是返回的结果。

procedure Tfrmupload.Button1Click(Sender: TObject);

var

    rst,i,t1,t2,interval:integer;

    head,body,msg,resultdata:String;

    DateTime:TDateTime;

begin

if checkbox1.Checked and (StringGrid1.Row<1) then

begin

showmessage('请选择一个事件!');

exit;

end;

if (not checkbox1.Checked) and (memo1.Text='') then

begin

showmessage('请选择一份header文件!');

exit;

end;

if memo4.Text='' then

begin

showmessage('请选择一份body文件!');

exit;

end;

memo2.Lines.Clear;

memo5.Lines.Clear;

edit1.Text:='';

label6.Caption:='';

button1.Enabled:=false;

head:='<header><eventid>'+StringGrid1.Cells[1,StringGrid1.Row]+'</eventid><organizationid>123</organizationid></header>';    //把head.xml文件转换成字符串

body:=memo4.Text;    //把body.xml文件转换成字符串

setlength(msg,2000); //因为msg是返回的信息,需要预先分配空间, 2000仅为示例,意为必须保证空间足够   

setlength(resultdata,20000); //因为resultdata是返回的信息,需要预先分配空间,结果有可能比较大,所以分配的空间也需要比较大

// 20000仅为示例,意为必须保证空间足够

t1:=getTickCount; //调用dll前时间

rst:=hdcService(PChar(head),PChar(body),PChar(msg),PChar(resultdata));//rst是执行返回的结果

t2:=getTickCount; 

interval:= t2-t1; //调用dll前后时间差

label6.Caption:=inttostr(interval);

button1.Enabled:=true;

edit1.Text:=inttostr(rst);

memo2.Lines.Add(resultdata);

memo5.Lines.Add(msg);

end;

你可能感兴趣的:(时间)