gpt4 book ai didi

c# - 如何在 WinForms 中强制用户使用管理员帐户

转载 作者:可可西里 更新时间:2023-11-01 13:24:31 25 4
gpt4 key购买 nike

我有一个简单的 WinForms 应用程序,可以修改 Windows 注册表。问题是在 Vista/Windows 7 中我需要强制用户切换到管理员。

我不想强制用户在应用程序启动时以管理员身份运行。我希望他在有必要写入注册表时这样做。

最好的情况是当用户需要“切换”到管理员时,出现与许多设置中出现的完全相同的消息,因此没有必要以管理员身份运行表单开始。

我如何在 .Net 中实现这一点?

最佳答案

如果应用程序有时不执行注册表操作而有时执行注册表操作,则分区是可行的方法。分区的三个关键是 (1) 在第二个 exe 上有一个 list ,正如 Ho 所说,(2) 在按钮/菜单项上放置一个屏蔽,以便用户期望提升,以及 (3) 使用 ShellExecute 启动它(之前调用 Start,将 UseShellExecuteFlag 设置为 true)以便使用 list 。

但是,在开始拆分您的应用程序之前,我想问两个问题。首先,它是否曾经用于非管理目的,或者每个用户是否总是“单击该按钮”并需要提升?如果是这样,那么只需在应用程序上放置一个管理 list ,不要对其进行分区。其次,您确定需要写入注册表的那部分吗?你能把你的 key 移到 HKCU 下的东西吗?如果可以,那么您就不再需要提升,每个人都会更快乐。我总是喜欢首先考虑这些可能性,因为与分区相比,它们意味着更少的代码和更少的测试。

关于c# - 如何在 WinForms 中强制用户使用管理员帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2680229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com