2024年10月XP系统中如何屏蔽Ctrl+Esc键序列(6)
⑴if (dwFlags & TASKBAR) {
⑵HWND hwnd = FindWindow("Shell_traywnd", NULL);
⑶EnableWindow(hwnd, !bDisable);
⑷BOOL CTaskKeyMgr::IsTaskBarDisabled()
⑸HWND hwnd = FindWindow("Shell_traywnd", NULL);
⑹return IsWindow(hwnd) ? !IsWindowEnabled(hwnd) : TRUE;
⑺BOOL CTaskKeyMgr::IsTaskMgrDisabled()
⑻HKEY hk;
⑼if (RegOpenKey(HKCU, KEY_DisableTaskMgr, &hk)!=ERROR_SUESS)
⑽return FALSE; // 没有此键,不禁用
⑾DWORD val=;
⑿DWORD len=;
⒀return RegQueryValueEx(hk, VAL_DisableTaskMgr,
⒁NULL, NULL, (BYTE*)&val, &len)==ERROR_SUESS && val==;
⒂这个类中的函数都是静态的,实际上CTaskKeyMgr完全就是一个名字空间。你可以在自己的程序中随心所欲地使用它。例如,禁用任务转换按键和任务栏,但是不禁用Ctrl+Alt+Del:
⒃CTaskKeyMgr::Disable(CTaskKeyMgr::TASKKEYS |
⒄CTaskKeyMgr::TASKBAR, TRUE);
⒅以上内容便是关于XP系统如何屏蔽键盘某个按键的方法,文中旨在屏蔽Ctrl+Esc、Ctrl+Alt+Del虽然略微复杂,却很有效。