屏蔽CTRL+ALT+DELETE

本文介绍了一种简单的锁屏功能实现方法,通过修改注册表来防止用户使用任务管理器关闭进程或进行窗口切换,同时提供了取消锁定的方法。
    最近在完成一项功能,就是锁屏功能。锁屏的时候要防止用户把本进程杀掉,也要防止用ALT+TAB切换到其他窗口。一开始想到屏蔽CTRL+ALT+DELETE。网上查查,大概有两种方法,一种就是HOOK GINA里的API函数。一种是修改注册表。前者需要替换系统文件,并要重启计算机,但是可以使CTRL+ALT+DELETE彻底屏蔽。(但是否能屏蔽掉ctrl+shift+esc call出任务管理器,杀掉进程就不知道了。)我们的软件不大,就这项功能让用户重启系统真有些得不偿失。第二种方法简单易行,虽然不能完全屏蔽CTRL+ALT+DELETE,但是可以屏蔽任务管理器,防止进程被杀。
    其实做法很简单:
    在注册表:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/System/主键下创建DWORD键值DisableTaskMgr,并设置其值为1,就ok了。
    要想取消锁定,把该键值设置为0或者删除就行了。
在不同的操作系统中,屏蔽Ctrl + Alt + Delete组合键的方法有所不同,以下分别介绍在Windows和Linux系统中屏蔽该组合键的方法。 ### Windows系统 在Windows系统中,可以通过组策略编辑器来屏蔽Ctrl + Alt + Delete组合键。以下是具体步骤: 1. 按下Win + R组合键,打开“运行”对话框,输入“gpedit.msc”并回车,打开组策略编辑器。 2. 在组策略编辑器中,依次展开“计算机配置” -> “Windows设置” -> “安全设置” -> “本地策略” -> “安全选项”。 3. 在右侧窗口中找到“交互式登录: 不需要按 Ctrl+Alt+Del”,双击该选项。 4. 在弹出的属性窗口中,选择“已启用”,然后点击“确定”保存设置。 ### Linux系统 在Linux系统中,屏蔽Ctrl + Alt + Delete组合键的方法因系统使用的初始化系统不同而有所差异,以下分别介绍使用SysVinit和systemd初始化系统的Linux系统屏蔽该组合键的方法。 #### SysVinit初始化系统 对于使用SysVinit初始化系统的Linux系统,可以通过编辑`/etc/inittab`文件来屏蔽Ctrl + Alt + Delete组合键。以下是具体步骤: 1. 使用文本编辑器打开`/etc/inittab`文件,例如使用vim编辑器: ```bash sudo vim /etc/inittab ``` 2. 在文件中找到类似如下的行: ```plaintext ca::ctrlaltdel:/sbin/shutdown -t3 -r now ``` 3. 在该行前面添加注释符号“#”,将其注释掉: ```plaintext # ca::ctrlaltdel:/sbin/shutdown -t3 -r now ``` 4. 保存并关闭文件,然后重新加载`inittab`配置: ```bash sudo init q ``` #### systemd初始化系统 对于使用systemd初始化系统的Linux系统,可以通过创建或编辑`/etc/systemd/system/ctrl-alt-del.target`文件来屏蔽Ctrl + Alt + Delete组合键。以下是具体步骤: 1. 使用文本编辑器创建或打开`/etc/systemd/system/ctrl-alt-del.target`文件,例如使用vim编辑器: ```bash sudo vim /etc/systemd/system/ctrl-alt-del.target ``` 2. 在文件中添加以下内容: ```plaintext [Unit] Description=Dummy target to override ctrl-alt-del handling Documentation=man:systemd.special(7) [Install] WantedBy=multi-user.target [Service] Type=oneshot ExecStart=/bin/true ``` 3. 保存并关闭文件,然后重新加载systemd配置: ```bash sudo systemctl daemon-reload ``` 4. 禁用默认的Ctrl + Alt + Delete处理: ```bash sudo systemctl mask ctrl-alt-del.target ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值