系统之家 - 系统光盘下载网站!

当前位置:系统之家 > 系统教程 > XP系统如何屏蔽键盘某个按键

XP系统中如何屏蔽Ctrl+Esc键序列(5)

时间:2011-08-24 09:44:46 作者:不后悔 来源:系统之家 1. 扫描二维码随时看资讯 2. 请使用手机浏览器访问: http://m.xitongzhijia.5same.com/xtjc/20110823/1072.html 手机查看 评论

  TaskKeyMgr

  ////////////////////////////////////////

  // TaskKeyMgr.h

  //

  #pragma once

  #include "TaskKeyHook.h"

  /////////////////////////////////////////////////////////////////////

  // 使用这个类禁用任务键,任务管理器或任务栏。

  // 用相应的标志调用Disable,如:CTaskMgrKeys::Disable(CTaskMgrKeys::ALL);

  //

  class CTaskKeyMgr {

  public:

  enum {

  TASKMGR = 0x01, // 禁用任务管理器(Ctrl+Alt+Del)

  TASKKEYS = 0x02, //禁用任务转换键(Alt-TAB, etc)

  TASKBAR = 0x04, //禁用任务栏

  ALL=0xFFFF //禁用所有东西L

  };

  static void Disable(DWORD dwItem,BOOL bDisable,BOOL bBeep=FALSE);

  static BOOL IsTaskMgrDisabled();

  static BOOL IsTaskBarDisabled();

  static BOOL AreTaskKeysDisabled() {

  return ::AreTaskKeysDisabled(); // 调用 DLL

  }

  };

  CPP实现

  ////////////////////////////////////////////////////////////////

  // TaskKeyMgr.cpp

  //

  #include "StdAfx.h"

  #include "TaskKeyMgr.h"

  #define HKCU HKEY_CURRENT_USER

  // 用于禁用任务管理器策略的注册表键值对

  LPCTSTR KEY_DisableTaskMgr =

  "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System";

  LPCTSTR VAL_DisableTaskMgr = "DisableTaskMgr";

  ///////////////////////////////////////////

  // 禁用相关的任务键

  //

  // dwFlags = 表示禁用什么

  // bDisable = 禁用为 (TRUE) ,否则为启用 (FALSE)

  // bBeep = 按下非法键是否蜂鸣(指针对任务键)

  //

  void CTaskKeyMgr::Disable(DWORD dwFlags, BOOL bDisable, BOOL bBeep)

  {

  // 任务管理器 (Ctrl+Alt+Del)

  if (dwFlags & TASKMGR) {

  HKEY hk;

  if (RegOpenKey(HKCU, KEY_DisableTaskMgr,&hk)!=ERROR_SUCCESS)

  RegCreateKey(HKCU, KEY_DisableTaskMgr, &hk);

  if (bDisable) { // 禁用任务管理器(disable TM): set policy = 1

  DWORD val=1;

  RegSetValueEx(hk, VAL_DisableTaskMgr, NULL,

  REG_DWORD, (BYTE*)&val, sizeof(val));

  } else { // 启用任务管理器(enable TM)

  RegDeleteValue(hk,VAL_DisableTaskMgr);

  }

  }

  // 任务键 (Alt-TAB etc)

  if (dwFlags & TASKKEYS)

  ::DisableTaskKeys(bDisable,bBeep); // 安装键盘钩

发表评论

0

没有更多评论了

评论就这些咯,让大家也知道你的独特见解

立即评论

以上留言仅代表用户个人观点,不代表系统之家立场

其他版本软件

人气教程排行

XP系统推荐

官方交流群 软件收录