繁体   English   中英

以编程方式禁用Taskmanager(ctrl + alt + del)

[英]Programmatically disable Taskmanager (ctrl+alt+del )

我目前正在开发一个应用程序来更轻松地配置Win10物联网机器。 想象一下,一个机器上的用户有一个自定义shell,几乎所有预定义的快捷键都被禁用,因此他只能使用生产应用程序。 但是,为了切换用户并配置系统,“Win + L”必须保持启用状态。 现在,在“Win + L”屏幕中,他仍然会找到进入Taskmanager的选项(不需要的)。 管理员可以防止这种情况是使用gpedit并更改机器上的ctrl + alt + del选项。 这正是我想要做的。

使用c#以编程方式禁用Taskmanager

非常接近, 但此注册表项仅适用于当前登录的用户 ,在我的情况下是管理员,因为配置工具需要管理权限(可以配置UWF过滤器等)。

如果我在LocalMachine而不是CurrentUser中尝试相同的操作,则注册表项将按预期创建,但它根本不起作用。

提前感谢您的帮助。

我找到了实现我想要的方法:

public void SetTaskManager(bool enable)
    {
      // Load settings of desired user via UserName property
      using (PowerShell PowerShellInstance = PowerShell.Create())
      {
        var command = Properties.Settings.Default.LoadRegistryOfUser;
        command = command.Replace("USERNAME", UserName);
        PowerShellInstance.AddScript(command);
        var res = PowerShellInstance.Invoke();
      }

      // Create the key and entry for the registry or delete it if
      // enable == true
      RegistryKey objRegistryKey = Registry.Users.CreateSubKey(
         UserName + @"\Software\Microsoft\Windows\CurrentVersion\Policies\System");
      if (enable && objRegistryKey.GetValue("DisableTaskMgr") != null)
        objRegistryKey.DeleteValue("DisableTaskMgr");
      else
        objRegistryKey.SetValue("DisableTaskMgr", "1", RegistryValueKind.DWord);

      objRegistryKey.Close();

      // Close the registry of the user, otherwise he cant log on
      using (PowerShell PowerShellInstance = PowerShell.Create())
      {
        var command = Properties.Settings.Default.CloseRegistryOfUser;
        command = command.Replace("USERNAME", UserName);
        PowerShellInstance.AddScript(command);
        var res = PowerShellInstance.Invoke();
      }
    }

Skripts:

LoadRegistryOfUser:reg load HKU \\ USERNAME C:\\ users \\ USERNAME \\ NTUSER.DAT

CloseRegistryOfUser:reg卸载HKU \\ USERNAME

它有点hacky但是我到目前为止找到的唯一方法。 希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM