如何正确实施“以管理员身份”或“以管理员身份运行”在 .NET 应用程序中进行选定的操作?

发布于 2024-11-26 13:42:51 字数 397 浏览 1 评论 0原文

我正在寻找正确的方法来允许提升所选操作的权限。

许多产品都提供类似的东西。

例如,如果您打开了 UAC,并且在浏览受限文件夹时使用 Total Commander(以基本权限运行),您将得到:

在此处输入图像描述

如果您按以管理员身份,您将看到常见的用户访问控制对话框,询问您是否要授予该进程所需的权限。 .NET 应用程序中是否可能存在类似的情况(即使有 Win32 支持)?

  1. 应该如何正确实现这样的功能?
  2. 我是否需要运行外部进程才能获得所选功能的提升权限?

我不是在寻找需要以管理员身份运行主进程的解决方案。

I'm looking for correct way to allow elevating privileges for selected operations.

Something similar many products offer.

For example if you have UAC turned on and you are using Total Commander (running with basic privileges) when browsing restricted folders you will get:

enter image description here

If you push As Administrator you will get common User Access Control dialog asking if you want to grant the process required permissions. Is it something similar possible in .NET application (even with Win32 support)?

  1. How should be such functionality correctly implemented?
  2. Do I need to run external process to get elevated privileges just for selected functionality?

I'm not looking for solution which will demand running the main process as administrator.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

完美的未来在梦里 2024-12-03 13:42:51

您必须将目标操作功能纳入将提升运行的单独组件中。它可以是需要提升的可执行文件,也可以是 COM 组件(可能是 .NET 组件的 COM 包装器)。详细信息请访问 http://msdn.microsoft.com/en-us/library /bb756990.aspx,带有 何时将盾牌图标添加到应用程序的用户界面特别相关。

You're going to have to factor the target operation functionality into a separate component that will be run elevated. This can be either an executable that requires elevation or a COM component (which could presumably be a COM wrapper for a .NET component). Details are available at http://msdn.microsoft.com/en-us/library/bb756990.aspx, with the When to Add the Shield Icon to Your Application's User Interface being particularly pertinent.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文