如何自我提升到在 UAC 下的高特权级别的应用程序


点击这里察看该文章的英文版: 981778

简介

本文介绍了多功能一体代码框架示例,它可用于下载。对用户帐户控制 (UAC),在 Windows Vista 和 Windows 操作系统的较新版本的安全组件相关的代码示例。当完全启用 UAC 时,交互式的管理员通常运行最少的用户特权。此代码示例演示如何自我提供明确同意,通过同意用户界面,以此提升至较高特权级别的应用程序。

难度级别

下载信息

若要下载此代码示例,请单击下面的链接:

技术概述

在 Windows Vista 引入了 UAC。当完全启用 UAC 时,交互式的管理员通常运行最少的用户特权。但是,交互式管理员可以通过给予明确同意同意 UI 与自我提升。交互式的管理员可以执行管理任务包括安装软件和驱动程序,可以更改系统范围的设置,查看或更改其他用户帐户,和运行管理工具。

此代码示例演示三种流行的编程语言 (Visual Visual C++ Visual C#,Baisc.NET) 在以下技术要点:
  • 如何在需要提升的任务的用户界面上显示 UAC 盾牌图标。
  • 如何自我提升当前进程。
  • 如何在启动时自动提升过程。

演示

按照有关此 UAC 的代码示例演示以下步骤:
  1. 成功生成 Visual Studio 2008 中的示例项目后,您会收到下面的应用程序文件,具体取决于您使用的编程语言:
    • CppUACSelfElevation.exe
    • CSUACSelfElevation.exe
    • VBUACSelfElevation.exe
  2. 已完全启用 UAC 的 Windows Vista 或 Windows 7 系统中受保护的管理员身份运行该应用程序。应用程序应在主对话框中显示下列内容:
    主对话框
    注意:还有一个 UAC 盾牌图标在自我提升按钮。
  3. 单击自我提升按钮。然后,您将看到下面的同意 UI:
    同意的情况下用户界面
  4. 单击同意提升。然后,在原始应用程序重新启动,以提升的权限的管理员身份运行。
  5. 关闭应用程序。
注意:有关如何创建示例应用程序的详细信息,请参见下载程序包中包含的 Readme.txt 文件。

技术类别

  • 安全

语言

此代码示例包含以下编程语言。
语言项目名称
Visual C++.NET 中CppUACSelfElevation
C#CSUACSelfElevation
Visual Basic.NETVBUACSelfElevation

系统必备组件

  • 在 Windows Vista 或更高版本的 Windows 操作系统,则必须运行此代码示例。
  • 此示例应用程序是通过使用 Service Pack 1 安装的 Visual Studio 2008 的创建。

标记

  • UAC

更多信息

多功能一体代码框架是什么?

多功能一体代码框架使用不同的编程语言中的代码示例说明了大多数的 Microsoft 开发技巧。每个代码示例是仔细选择、 编写,并且记录下来,以显示代码的常见方案。多功能一体代码框架有关的详细信息,请访问下面的多功能一体代码框架 Web 站点:

如何找到更多的多功能一体代码框架示例

要找到更多的多功能一体框架代码示例,请搜索"kbcodefx"以及相关的关键字在 Microsoft 支持网站。或者,请访问下面的 Microsoft 网站:

参考

有关详细信息,请访问下面的 Microsoft 开发人员网络 (MSDN) Web 站点:
快速发布免责声明
微软公司和/或其相应的供应商进行关于适用性、 可靠性或准确性的信息和相关的图形包含本文所述的任何表示。所有此类信息和相关的图形被提供"按原样",没有任何形式的担保。微软和/或其相应的供应商不作出任何担保和条件,根据此信息和相关的图形,包括所有的暗示担保和适销性、 适合特定用途、 熟练度、 标题和非侵权性的状况。您明确同意,在任何情况 Microsoft 或其供应商应承担责任的任何直接、 间接、 惩罚性的偶然、 特殊、 后果性的损害赔偿或任何损害任何包括但不限于使用、 数据或利润损失,损失所引起的以任何方式使用或无法使用的信息和相关的图形包含本文所述使用连接无论是基于合同、 民事侵权行为、 过失、 严格责任还是; 否则为即使 Microsoft 或其供应商已被告知发生损害的可能性。
属性

文章 ID:981778 - 上次审阅时间:2017年2月14日 - 修订版本: 1

反馈