我有以下代码来禁用Windows XP的任务管理器,但它仍然显示“任务管理器被禁用”的消息,我们必须按确定
我怎么能禁用这条消息;
我希望当任何人按 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
答案 0 :(得分:3)
组合键 CTRL + ALT + DEL 被拦截并通过视窗处理直接,不翻译成一个按键消息并将其发送到活动窗口像所有其他组合键一样。这是为了允许Windows显示安全桌面UI,即使计算机已被入侵。虽然您可以通过操作注册表项来选择性地禁用安全桌面的某些功能,但您将无法摆脱桌面本身。
修改强>
月亮,我刚注意到your previous attempt at asking this same question。这让您的客户过度指定他们的要求。为什么任何人想要在执行普通Windows应用程序期间禁用任务管理器?我能想到的唯一真实场景是: