启用/禁用TaskManager
public static void ToggleTaskManager(string keyValue) { RegistryKey objRegistryKey = Registry.CurrentUser.CreateSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System"); objRegistryKey.SetValue("DisableTaskMgr", keyValue); objRegistryKey.Close(); } private void btnDisableTaskManager_Click(object sender, EventArgs e) { ConsoleDisplay.ToggleTaskManager("1"); } private void btnEnableTaskManager_Click(object sender, EventArgs e) { ConsoleDisplay.ToggleTaskManager("0"); }
对于上面使用的禁用/启用TaskManagerfunction但是当我第一次禁用时它会正确禁用。但是当我点击启用按钮时,未启用TaskManager。
是的,删除将起作用。 意思是,使用此代码切换:
public void ToggleTaskManager() { RegistryKey objRegistryKey = Registry.CurrentUser.CreateSubKey( @"Software\Microsoft\Windows\CurrentVersion\Policies\System"); if (objRegistryKey.GetValue("DisableTaskMgr") == null) objRegistryKey.SetValue("DisableTaskMgr", "1"); else objRegistryKey.DeleteValue("DisableTaskMgr"); objRegistryKey.Close(); }
或者这个代码来设置:
public void SetTaskManager(bool enable) { RegistryKey objRegistryKey = Registry.CurrentUser.CreateSubKey( @"Software\Microsoft\Windows\CurrentVersion\Policies\System"); if (enable && objRegistryKey.GetValue("DisableTaskMgr") != null) objRegistryKey.DeleteValue("DisableTaskMgr"); else objRegistryKey.SetValue("DisableTaskMgr", "1"); objRegistryKey.Close(); }
尝试删除密钥而不是将值设置为False
试试这个:
public void SetTaskManager(bool enable) { RegistryKey objRegistryKey = Registry.CurrentUser.CreateSubKey( @"Software\Microsoft\Windows\CurrentVersion\Policies\System"); if (enable && objRegistryKey.GetValue("DisableTaskMgr") != null) objRegistryKey.DeleteValue("DisableTaskMgr"); else objRegistryKey.SetValue("DisableTaskMgr", "1"); objRegistryKey.Close(); }
对于启用/可靠:(抱歉,我的英语非常糟糕…)
private void Form1_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { case Keys.F1: { SetTaskManager(Convert.ToBoolean(1)); } break; }
注意:您必须具有管理员权限才能运行该程序。
答案4是Okey但Uu需要一个更多的代码,这个%100真( RegistryValueKind.DWord );
RegistryKey objRegistryKey = Registry.CurrentUser.CreateSubKey( @"Software\Microsoft\Windows\CurrentVersion\Policies\System"); if (objRegistryKey.GetValue("DisableTaskMgr") == null) objRegistryKey.SetValue("DisableTaskMgr", "1", RegistryValueKind.DWord); else objRegistryKey.DeleteValue("DisableTaskMgr"); objRegistryKey.Close();
要禁用TaskManager,您必须在注册表(用户本地计算机而不是当前用户)中设置DWord字符串。 使用以下代码。(它在Windows 7中不起作用)
Microsoft.Win32.RegistryKey key; key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",true); key.SetValue("DisableTaskMgr", "1", RegistryValueKind.DWord); key.Close();
for该用户应用程序必须在Admin Permission下运行。 更改app.manifest中的更改,以便在管理员权限中使用应用程序