gpt4 book ai didi

c++ - 每次启动我的应用程序时如何摆脱 UAC

转载 作者:太空宇宙 更新时间:2023-11-04 11:46:25 27 4
gpt4 key购买 nike

我已经使用 Verisign 签署了我的应用程序,将所有注册表变量存储在 HKCU 中以避免请求管理员权限,但 UAC 命令仍然提示用户他/她是否希望以下内容对其计算机进行更改。我该如何防止这种情况发生。

VS生成的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='asInvoker' uiAccess='false' />
</requestedPrivileges>
</security>
</trustInfo>
<dependency>
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*' />
</dependentAssembly>
</dependency>
</assembly>

最佳答案

正如我所怀疑的那样,在应用程序 list 中找到了对此行为的解释。您已指定请求的执行级别 requireAdministrator。正是该设置导致显示 UAC 对话框。将其更改为 asInvoker 以避免请求提升。

....
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
....

Visual Studio IDE 中很可能有一个设置来控制它。我对此不熟悉,但我希望这就是您实现此更改所需的方式。好的,我查了一下。 IDE 设置位于配置页面的链接器节点中,在 list 文件部分下。可以在此处找到相关文档:http://msdn.microsoft.com/en-us/library/bb384691.aspx

了解 application manifests over on MSDN .

关于c++ - 每次启动我的应用程序时如何摆脱 UAC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19728280/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com