delphisetTimer函数用来做定时器,可以实现每隔一段时间运行某个程序,需要用到两个函数,SetTimer函数和KillTimer函数。
下面是一个简单的例子:
var
i :Integer = 0;
procedure TimerProc(hwnd:HWND;uMsg,idEvent:UINT;dwTime:DWORD); stdcall;
begin
inc(i);
Form1.Caption := IntToStr(i);
end;
procedure TForm1.FormCreate(Sender:TObject);
begin
SetTimer(Handle,10,500,@TimerProc);
end;
procedure TForm1.FormDestroy(Sender:TObject);
begin
KillTimer(Handle,10);
end;
敏感的360会将这段程序视为木马,可能是很多木马都会用到类似定时器的功能吧,setTimer 函数几乎成了木马的一个特征了
参数解释:
setTimer 一共四个参数:
1.调用函数的handle,windows会定时发送WM_TIMER消息给此handle
2.timer的标识,可设置为0
3.定时器的值,单位是毫秒
4.回调函数
第1,2个参数可以随便设置,注意第二个参数必须是数字,对应的killTimer的前两个参数必须跟setTimer参数一样。