关于Ctrl+Alt+Del的禁用
发布时间:2018年1月28日 作者:未知 查看次数:1079
void mOpenTaskmgr() { HANDLE tFile; char tSysDir[MAX_PATH]; OFSTRUCT ofStruct={sizeof(OFSTRUCT)}; tSysDir[0]=0; GetSystemDirectory(tSysDir,MAX_PATH); wsprintf(tSysDir,"%s\\taskmgr.exe",tSysDir); tFile=OpenFile(tSysDir,&ofStruct,OF_READ | OF_SHARE_EXCLUSIVE); //OF_SHARE_DENY_READ或者是OF_SHARE_EXCLUSIVE都能禁止其他程序读写文件 } 测试XP下可以。Win7提权没试。 =========================================================== 自:http://blog.sina.com.cn/s/blog_70dc4ea0010151r7.html XP中,Ctrl+Alt+Del可以打开任务管理器(偶发现Ctrl+Shift+Esc也可以),关于禁用这个热键,网上是见了多了,有这几种方法: 1、通过注册表禁用,网上大多数用此方法,打开任务管理器就会提示被禁用 2、监视窗口或进程,一发现就K了 3、键盘Hook(其实没效果- -) 4、Open Environ$("WinDir") & "\system32\taskmgr.exe" For Binary As #1(占用了文件,自然打不开) 5、用了一个API,好像是SetSystemInformation这样的吧,记不清了,不过我试验好像也没效果 6、Ctrl+Alt+Del貌似是winlogon管的,直接让winlogon死!(系统蓝屏- -) …… 我用的是第4种,既方便有实用- -。 后来在不知哪个论坛上说到了Win7/Vista中禁用Ctrl+Alt+Del,而在Win7/Vista中Ctrl+Alt+Del是打开一个界面(叫什么名字来着?),这就有些麻烦了。我首先想到的就是把SwitchDesktop给HOOK了…… APIHook太麻烦,XP下的方法又没用,怎么办呢?对了,也不是所有方法都没有呵。方法6…… 在Win7/Vista下winlogon杀死后不会蓝屏,Ctrl+Alt+Del也可以成功屏蔽,不过桌面会空空如也(Explorer死了?!)干嘛这么暴力杀winlogon啊,把它给Suspend不就行了?! 有思路了,先进程提权(不然OpenProcess返回0),然后OpenProcess,再NtSuspendProcess,要恢复就用NtResumeProcess,这个方法好! 我试了一下,这方法在XP下也有效,系统并无崩溃,不过用户切换会不会有问题呢?没试验过,还是不要在多用户的机子上用为好。
|
|
|