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");
}对于上面使用的禁用/启用TaskManager功能,但当我第一次禁用时,当我单击启用按钮时,它将禁用correctly.But TaskManager not enabled。
发布于 2013-05-17 22:09:18
是的,delete将起作用。意思是,使用下面的代码来切换:
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();
}发布于 2013-05-17 21:48:48
尝试删除密钥,而不是将值设置为False
发布于 2015-12-23 22:50:48
试试这个:
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;
}注:您必须具有管理员访问权限才能运行该程序。
https://stackoverflow.com/questions/16610567
复制相似问题