如何按CTRL + ALT + DEL来停止此消息?

我有下面的代码来禁用Windows XP的任务pipe理器,但它仍然显示消息“任务pipe理器被禁用”,我们必须按确定

我怎么能禁止甚至这个消息;

我想,当任何一个按下CTRL + ALT + DEL什么也没有发生,甚至没有消息对话框。

HKEY hMykey; DWORD pDWDisp; unsigned char cData[1]; cData[0]='1'; LONG lRes = RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\system", 0,"DisableTaskMgr",REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS, NULL,&hMykey,&pDWDisp); // Open a key for edit if(lRes != ERROR_SUCCESS) { MessageBox(0,"Error opening key","",MB_OK); exit(0);// Shutdown on fail }//End if lRes = RegSetValueEx(hMykey,"DisableTaskMgr",0,REG_DWORD, (LPBYTE)cData,sizeof(cData));// Add your key value if(lRes != ERROR_SUCCESS) { MessageBox(0,"Error saving record","",MB_OK); RegCloseKey(hMykey); exit(0);// Shutdown on fail }//End if 

CTRL + ALT + DEL组合键被Windows直接拦截和处理,不会被翻译成按键消息,并像所有其他键组合一样被发送到活动窗口。 这是为了允许Windows显示安全桌面用户界面,即使机器已经被入侵。 虽然您可以通过操作注册表项来选择性地禁用安全桌面的某些功能,但您将无法摆脱桌面本身。

编辑:

月亮,我刚才注意到你以前的这个问题 。 这对你的客户来说过分了。 为什么有人想要在正常的Windows应用程序执行期间禁用任务管理器? 我能想到的唯一的真实场景是:

  1. 您是网络管理员,并且您想要在所有工作站上禁用任务管理器。 在这种情况下,您将使用组策略来禁用它,而不是注册表黑客。
  2. 您正在编写一个Kiosk应用程序。 我不太了解Kiosk应用程序,但是我确定有一个正式的Windows API来控制它们的运行方式。 改用它。