如何解决桌面桥允许提升受限功能无法正常工作,UAC 后出现错误“请求的操作需要提升”
我已经从 https://stefanwick.com/2018/10/01/app-elevation-samples-part-1/
下载并编译了应用程序链接到 github https://github.com/StefanWickDev/AllowElevation-Samples/tree/master/Hello%20Elevated%20World
我做了两个版本,只改变了 app.manifest 中的 requestsExecutionLevel
- 与
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
- 与
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
在标准用户帐户(非管理员)uac 设置为默认(最大)上运行这两个应用
#1 的问题 是它不会触发任何 UAC,但我相信它应该?当在任务管理器中检查时,它显示 Elevated No
#2 问题 出现运行 UAC 框时,输入管理员密码时,错误消息显示“请求的操作需要提升” 并且应用程序根本没有启动。
看起来 MSTF 方面有什么东西坏了,还是我遗漏了什么?
Package.manifest 中的能力部分
<Capabilities>
<Capability Name="internetClient" />
<rescap:Capability Name="runFullTrust" />
<rescap:Capability Name="allowElevation" />
</Capabilities>
解决方法
功能 allowElevation
允许 Microsoft 合作伙伴和企业创建的应用保留需要在启动时或应用生命周期内自动提升的现有桌面功能。
当您使用 allowElevation
功能并将 level 属性的值设置为 highestAvailable
时,应用将以当前用户帐户中可用的最高级别运行。如果当前帐户是管理员,则应用程序可能会询问更高级别。 UAC 将被触发,当在任务管理器中检查时,它显示 Elevated 是。如果当前账户是标准账户,最高级别为标准用户级别,因此不会触发UAC,在任务管理器中勾选时显示Elevated No。
当您使用 allowElevation
功能并将 level 属性的值设置为 requireAdministrator
时,应用程序需要在管理员下运行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。