怎样在程序中得知本程序的运行时间-程序从启动到现在的时间?(50分)

  • 主题发起人 主题发起人 墨剑
  • 开始时间 开始时间

墨剑

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样在程序中得知本程序的运行时间-程序从启动到现在的时间?
 
procedure TForm1.Button2Click(Sender: TObject);
var
b_time:TDateTime;
bbb:integer;
begin
b_time:=now;
Adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(edit2.text);
adoquery1.Open;
Label1.Caption:=inttostr(Adoquery1.RecordCount);
bbb:=DateTimeToTimeStamp(Now).time-DateTimeToTimeStamp(b_Time).Time;
label3.Caption:=inttostr(bbb);
end;
这样可以精确到毫秒级
 
用GetTickCount():取当前时刻(不是时间)
这样,在FormCreate中取一次,记住,在现在再取一次,相减得一个毫秒数,将其换算成
你所需的时间格式就行了。
这种方法比用Now()好,因为中途万一由于什么原因改了当前时间(比如:改成上个月了)
计算的就不准了
 
在create中给一个全局变量赋0,放置一个TTimer,按照你的精度需要设置触发间隔,每次
向全局变量加值,这样可以避免更改系统时间所造成的时间差异。
 
用一个timer控件,最好是下载一个多线程的timer控件
 
用个timer就行了。
 
用HD_copy 的办法就可以了!
begin_time:=GetTickCount():
end_time:=GetTickCount():
所用时间:=end_time-begin_time ;
 
结束帖子
 
后退
顶部