【问题标题】:Administrator rights for Windows applicationWindows 应用程序的管理员权限
【发布时间】:2013-07-20 11:48:52
【问题描述】:

我需要在 Windows 上创建并写入 C:\ 下的文件。 这显然需要管理员权限。

我的申请包括:

  • 核心 (.exe)
  • 两个.dll

现在,我看到很多软件(如游戏)在安装过程中需要管理员权限,并且在他们可以做任何他们想做的事情之后;这怎么可能?

我怎么能通过 C++ 做到这一点?

【问题讨论】:

  • 有趣的是:“[..] 在安装过程中需要管理员权限,并且在他们可以做任何他们想做的事情之后[...]?”例如哪个?
  • 我认为例如 FIFA 或 F1 2012,他们在 C:\Programs ... 下管理他们的设置...
  • 有些游戏只是修改了C:\Program Files下文件夹的访问权限。 Microsoft 不建议这样做(尽管他们曾经这样做过),而是应将可修改的数据文件安装到 C:\ProgramData\<company>\<app>\...。

标签: c++ windows api admin rights


【解决方案1】:

如果您希望您的应用程序始终以管理员身份运行,您可以在应用程序的清单文件中指定此项。

具体来说,您需要添加如下内容:

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo>

更多关于 application manifest files 的信息可以在 MSDN 中找到。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-20
    • 1970-01-01
    • 1970-01-01
    • 2021-07-27
    • 2013-09-27
    相关资源
    最近更新 更多