当前位置: 首页 > 编程语言 > C#

在OSHardenedMachine中使用c#禁用任务管理器share

时间:2023-04-10 17:43:33 C#

DisableTaskManagerinOSHardenedMachineusingc#注册码;字符串keyValueInt="1";stringsubKey="Software\Microsoft\Windows\CurrentVersion\Policies\System";尝试{regkey=Registry.CurrentUser.CreateSubKey(subKey);regkey.SetValue("DisableTaskMgr",keyValueInt);注册码.Close();}catch(Exceptionex){MessageBox.Show("DisableTaskManager"+ex.ToString());但是当我在操作系统加固的机器上运行时,我得到以下错误,DisableTaskManagerSystem.UnauthorizedAccessException:拒绝访问注册表项'HKey_Current_UserSoftwareMictrosoftWindowsCurrentVersionPoliciesSystem'。在Microsoft.win32.RegistryKey.win32Error(int32errorcode,Stringstr)我怎样才能克服这个问题?我需要为Kiosk应用程序执行此操作。检查一下,我还不是一个足够优秀的C#开发人员来发表评论,但我知道在我与其他开发人员合作的这段时间里,他们来到Windows7中使用UAC,如果这就是这里所说的。http://www.aneef.net/2009/06/29/request-uac-elevation-for-net-application-managed-code/设置那台机器的人基本上反过来问......“我如何防止非管理员乱用组策略”。因此,参与组策略军备竞赛,您可以在以管理员身份运行时在安装时执行此操作,或者在不以具有特权的用户身份运行时跳过该部分代码。不要为您的应用程序禁用任务管理器,而是使用Windows服务或计划任务。您的应用程序将在当前用户的上下文中运行,而无需注册表项的权限。相反,您可以创建Windows服务或计划任务,它们可以作为具有更高权限的用户运行并可以写入注册表。使用Windows服务,您可以通过任何IPC机制(如自定义服务消息、套接字、.NETRemoting、WCF等)进行通信,以告诉它打开/关闭任务管理器。该代码需要提升权限才能访问注册表。但是,只有一段代码需要这些额外的权限。为了处理这种情况,使用了模拟,即您将仅以普通用户身份执行此应用程序,但该特定代码段将以管理员身份执行。http://msdn.microsoft.com/en-us/library/system.security.principal.windowsimpersonationcontext.aspx以上是C#学习教程:使用c#在OS加固机中禁用任务管理器共享,如果你想大家都是很有用,需要多了解C#学习教程。希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: