需要程序运行期间不允许双击系统托盘或其他途径修改系统时间,有没有修改系统时间的钩子?Delphi改如何实现?哪位能给出代码?这里先谢了!

解决方案 »

  1.   

    用Guest权限使用系统,就不能修改时间
      

  2.   

    利用windows帐户的权限,或者是用
    procedure TForm1.Button2Click(Sender: TObject);
    var
    rtScreen: TRect;
    begin
    rtScreen := Rect(0, 0, Screen.Width, Screen.Height-30);
    ClipCursor(@rtScreen);
    end;
    干脆把鼠标锁定了,不能往那里移动。
      

  3.   

    直接禁止的办法,不知道除了上面说的间接办法,你还可以通过下面的代码截获系统时间改变
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        Memo1: TMemo;
        Button2: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
       procedure WMTIMECHANGE(var Message: TWMTIMECHANGE);
           message WM_TIMECHANGE;  end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMTIMECHANGE(var Message: TWMTIMECHANGE);
    begin
      Form1.Caption := 'Time Changed';
    end;在截获后,从Internet上同步时间改回来。
      

  4.   

    控制面析-->本地安全策略-->用户权利指指派-->更改系统时间-->删除用户要是能改动这些就达到目的的了.``
      

  5.   

    我把CMOS电池拿下,每次开机时间都是某某年1月1日0点。防不胜防。
      

  6.   

    最好的方法,就是注入进程到Exploer.exe里,把自己监控代码插入核心进程里,自己有一个时间,时刻比对系统时间与自己的时间是否一致,不一致,用自己的程序来改变系统时间
      已经接近于病毒和黑客工具编写了,哈哈
      

  7.   

    在系统中建一受限用户USER,每次登录时选用USER登录即可
      

  8.   

    强烈鄙视问题解决后不结贴的人!
    强烈鄙视技术问题解决后把贴子转移到非技术区的人!
    鄙视你们!http://community.csdn.net/Expert/topic/5216/5216675.xml?temp=.9262659