c# - UAC 需要控制台应用程序

标签 c# .net .net-2.0 uac manifest

我有一个控制台应用程序需要使用一些需要管理员级别的代码。我读到我需要添加一个 list 文件 myprogram.exe.manifest ,它看起来像这样:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator">
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

但它仍然没有提高 UAC(在控制台中或在 VS 中调试)。我该如何解决这个问题?

更新

如果我在 Administrator 中运行解决方案或在 Administrator 中运行/bin/*.exe,我就能让它工作。我仍然想知道是否有可能在应用程序启动时弹出一些东西,而不是明确地右键单击>以管理员身份运行?

最佳答案

对于任何使用 Visual Studio 的人来说,这都非常简单。我正要设置 Windows SDK 并执行 mt.exe 构建后步骤以及所有这些,然后才意识到它已内置到 VS 中。我想我会把它记录下来以供后代使用。

  1. 项目 |添加新项 -> Visual C# 项 -> 应用程序 list 文件
  2. 打开 app.manifest,将 requestedExecutionLevel.@level 更改为“requireAdministrator”
  3. build

塔达

关于c# - UAC 需要控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/227187/

相关文章:

exception - .NET 2.0 与 .NET 4.0 加载错误

c# - 如何在矩形中正确定位 "X"?

c# - 在输出参数 CRM 中返回 EntityCollection 时出错

c# - 为什么不能通过类实例访问公共(public)委托(delegate)?

c# - 从 C++/CLI 调用 C# dll 时出现 FileNotFoundException

c# - 如何在运行时创建任意数组类型的实例?

c# - 如何关闭用户控件的初始化

c# - 在异步或同步操作中使用监视器锁

javascript - 复选框 ng-model 值未根据复选框单击更改/更新

.net - Clickonce:setup.exe 在浏览器中打开 .application 文件。普通的?