如何在Windows2000下屏蔽ALT+Tab键,用键盘钩子尝试多次失败,请高手相助

解决方案 »

  1.   

    将Form的FormStyle属性设为fsStayOnTop 
    将Form的WindowState属性设为wsMaximized 
    在Form的OnCreate事件处理过程中为Windows发送一个屏幕保护程序正在运行的消息 
    当程序结束时清除屏幕保护程序运行标志。 
    procedure TForm1.FormCreate(Sender: TObject);
    var
      temp: Integer;
    begin
      SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @temp, 0);
    end;procedure Form1.OnClose(Sender: TObject; var Action: TCloseAction);
    var
      temp: Integer;
    begin
      SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @temp, 0);
    end;
      

  2.   

    这种方法只在Win98下有效,Win2000下无效。要用钩子实现。
      

  3.   

    SystemParametersInfo应该可以的吧我在98下试过,通过!
      

  4.   

    我要的是Win2000下用键盘钩子实现的方法!
      

  5.   

    2000提供一个"底层钩子",你看一下msdn
      

  6.   

    我想知道WH_KEYBOARD_LL及LLKHF_ALTDOWN等的值,很可惜Delphi中没有定义low-level keyboard hook的相应变量。