CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

如何锁住键盘和鼠标?

楼主mirageTF(mirageTF)2004-09-02 13:41:39 在 C++ Builder / 基础类 提问

从来没做过,在此求教。有项目要求,在程序运行时,按某键后锁住键盘,不能进行操作,鼠标也要失效。待按了某键后又恢复,请问该如何处理?还有问一下,当锁住键盘之后,过了几分钟带密码的屏幕保护开启,这时候键盘还能不能输入? 问题点数:50、回复次数:17Top

1 楼aniven(Compile Failed)回复于 2004-09-02 13:50:09 得分 5

//鎖住鼠標  
  TRect   lockmouse=Panel1->BoundsRect;  
  MapWindowPoints(Handle,0,(LPPOINT)(&lockmouse),2);  
  ClipCursor(&lockmouse);  
   
  //恢復鼠標  
  ClipCursor(0);  
   
  SystemParametersInfo(SPI_SCREENSAVERRUNNING,true,NULL,0);//屏蔽Ctrl+Alt+Del键  
  SystemParametersInfo(SPI_SCREENSAVERRUNNING,false,NULL,   0);//恢复Ctrl+Alt+Del键Top

2 楼Lonelywolf1899(プログラマ)回复于 2004-09-02 13:50:47 得分 0

if(Key!=??)  
          Key=0;Top

3 楼jishiping(JSP 季世平)回复于 2004-09-02 13:52:08 得分 0

只能用全局的鼠标钩子和低级的键盘钩子了,不过低级的键盘钩子值能在NT平台使用。有关钩子的使用,楼主自己搜索一下吧,CSDN上很多的。Top

4 楼mirageTF(mirageTF)回复于 2004-09-02 14:00:17 得分 0

1、2楼,我没说清楚,是要锁全部windowsTop

5 楼constantine(飘遥的安吉儿)回复于 2004-09-02 14:00:30 得分 40

void   __fastcall   TForm1::btnClick(TObject   *Sender)  
  {  
   
  BOOL   __stdcall   (*BlockInput)(BOOL   Flag);  
  (FARPROC)BlockInput   =   GetProcAddress(GetModuleHandle("user32.dll"),   "BlockInput");  
  if   (BlockInput)   BlockInput(true);    
   
  }  
   
  //恢复BlockInput(false);Top

6 楼constantine(飘遥的安吉儿)回复于 2004-09-02 14:01:26 得分 0

按下<Ctrl>+<Alt>+<Del>也可以解Top

7 楼jishiping(JSP 季世平)回复于 2004-09-02 14:02:26 得分 5

BlockInput   锁住后,就不能自己按某个键解开了,此时只能定好某个时间由程序自己解开。Top

8 楼mirageTF(mirageTF)回复于 2004-09-02 14:23:18 得分 0

先谢谢楼上各位。  
  constantine(飘遥的安吉儿)   的代码不能解决我的问题,因为当操作软件的人离开岗位时不能让别人操作,所以按下<Ctrl>+<Alt>+<Del>就能化解不能用。  
  另外想问问,之前我也找过一些文章,有些是关于win2k下屏蔽<Ctrl>+<Alt>+<Del>的,想知道是不是一般的屏蔽都会因为<Ctrl>+<Alt>+<Del>而失效,必须先把<Ctrl>+<Alt>+<Del>屏蔽?Top

9 楼constantine(飘遥的安吉儿)回复于 2004-09-02 14:35:48 得分 0

把任务管理器关掉看看Top

10 楼show00(星星)回复于 2004-09-02 14:40:42 得分 0

HookTop

11 楼mirageTF(mirageTF)回复于 2004-09-02 15:12:59 得分 0

当锁住键盘之后,过了几分钟带密码的屏幕保护开启,这时候键盘还能不能输入?Top

12 楼constantine(飘遥的安吉儿)回复于 2004-09-02 16:04:03 得分 0

要真正屏蔽<Ctrl>+<Alt>+<Del>比较麻烦,当然有办法。  
  锁定其他的可以用钩子,  
  屏幕保护可以带密码的,就似系统的密码,你没有必要自己做Top

13 楼weill(每天提一问,一天学一点)回复于 2004-09-02 16:18:38 得分 0

和和,刀走偏锋,这样的程序不是让人赞叹就是给人麻烦。  
   
  我的意思是,除非你做得非常好,会让人赞叹你的程序做得非常不错。  
  不过,只怕多数情况下,别人会骂你把电脑给搞得不听话了。  
   
  同意安吉儿的,利用windows自身的屏保。  
  Top

14 楼futulove(福途£爱)回复于 2004-09-02 17:00:31 得分 0

一楼的锁住三键好像不太好使Top

15 楼mirageTF(mirageTF)回复于 2004-09-02 17:26:22 得分 0

1楼的锁3键只能在98下,NT/2000下无效Top

16 楼weill(每天提一问,一天学一点)回复于 2004-09-02 19:41:54 得分 0

咯咯,这种屏锁三键的功能,偶想,微软是不会轻易让大家实现的,否则,很多黑客会用上这一招的。  
   
  我的意思就是说,只怕只有高等级的黑客才会这一招吧(当然,也许是我太菜了,呵呵,关注中)。Top

17 楼jmsjq(HB学子)回复于 2004-09-02 21:28:21 得分 0

我下过一个例子,以前试时不能锁住<ctrl>+<alt>+<del>三键,(试过多次)但是也不能解锁,今天试却可以锁住三键了,(不知道是不是写过注册表了)三键器按时,只能刷新屏幕,不会弹窗体。只能按特定键才能解锁。Top

相关问题

  • 在NT/win2000下如何锁住键盘鼠标?急!
  • vc实现锁住键盘鼠标
  • 如何完全锁住键盘?
  • ~~请问,如何锁住键盘???~~
  • 您好! 请问如何锁住键盘??
  • 如何锁住电脑键盘
  • 如何锁定键盘、鼠标、硬盘?
  • 如何锁定键盘,鼠标?
  • 如何禁止鼠标和键盘?
  • 如何屏蔽键盘和鼠标

关键词

  • 键盘
  • 鼠标
  • 屏蔽
  • 屏幕
  • 密码
  • 锁住
  • blockinput
  • 键
  • 钩子
  • lockmouse

得分解答快速导航

  • 帖主:mirageTF
  • aniven
  • constantine
  • jishiping

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo