看了你在大富翁上的讨论:("在NT/2000中怎么禁用Ctrl+Alt+Delete?(注意不能用gina,键盘驱动) ?誰能把這段代碼改成delphi的!).我把你翻译的源代码编译了一下,没有错误。
可是运行后并不能禁用这三个键,按下后仍会弹出任务管理器(Winxp+D7)。拿到另一台机子的Win2000下,也不行!会弹出任务管理器。怎么回事?通过修改注册表禁用任务管理器是可用的!!!怎么回事????

解决方案 »

  1.   

    copy_paste(木石三)
    没有来吗?
      

  2.   

    procedure TForm1.SetTaskMgr(const Value: Boolean);
    const
      KEY_DisableTaskMgr = 'Software\Microsoft\Windows\CurrentVersion\Policies\System';
      VAL_DisableTaskMgr = 'DisableTaskMgr';
    begin
      if FTaskMgr = Value then Exit;
      with TRegistry.Create do
      try
        RootKey := HKEY_CURRENT_USER;
        //  改这个参数,原来是False,即不存在则没有写入注册表。修改时是需要写入注册表的。
        if OpenKey(KEY_DisableTaskMgr, True) then
        //                             ^^原来的是False
          WriteInteger(VAL_DisableTaskMgr, Integer(Value));
        CloseKey;
        FTaskMgr := Value;
      finally
        Free;
      end;
    end;
      

  3.   

    Win2000下,也不行!!!!会弹出任务管理器。怎么回事?
    还有
    禁用alt+ctrl+del和禁用任务管理器有什么区别,按这三个键不就是弹出
    任务管理器吗?
      

  4.   

    那就不清楚了,不然给mail发短消息给我,我发EXE给你看看