窗体的onCreate事件:
private
  FLoadDatetime: TDatetime;
...
...onCreate...
begin
  FLoadDatetime := now;
end;
在窗体上放一个Timer属性默认。双击添加代码:
begin
  if now <= self.FLoadDatetime then
    begin
      MessageDlg('系统时间已被恶意修改。', mtStop, [mbOK],0);
      Application.Terminate;
   end;
end;运行之。奇怪的是即使修改了系统时间, Timer中定义的代码也不会运行。
为什么?待高手解答。谢谢!

解决方案 »

  1.   

    Timer控件在这里有什么作用,你用错控件了把,
    Timer控件不是纪录日期的,而是用来确定每间隔一定时间(自己设定时间间隔),然后执行事件代码一次。
      

  2.   

    为什么我的执行是可以的?procedure TForm1.FormCreate(Sender: TObject);
    begin
        FloadTime:=now;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
        if now<=self.FloadTime then
        begin
            MessageDlg('系统时间已被恶意修改。', mtError, [mbOK],0);
            application.Terminate;
        end;
    end;
      

  3.   

    为什么我的执行是可以的?procedure TForm1.FormCreate(Sender: TObject);
    begin
        FloadTime:=now;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
        if now<=self.FloadTime then
        begin
            MessageDlg('系统时间已被恶意修改。', mtError, [mbOK],0);
            application.Terminate;
        end;
    end;
      

  4.   

    回复人: lovend(颓废之吻) ( ) 信誉:100  2005-05-16 11:08:00  得分: 0  
     
     
       Timer控件在这里有什么作用,你用错控件了把,
    Timer控件不是纪录日期的,而是用来确定每间隔一定时间(自己设定时间间隔),然后执行事件代码一次。
    ////////////////////////
    搂住用法是对的,timer是用来定时比较时间的...