繁体   English   中英

如何查看我的应用程序是否需要提升的特权?

[英]How can I view whether my application requires elevated privileges or not?

我正在用C ++开发一个应用程序,该应用程序需要尽可能地可移植,并且能够在没有提升特权的情况下运行,因此普通用户可以运行它。 但是我不确定如何检查它,因为它在我的系统中运行时没有任何弹出式窗口,例如UAC或要求特权。 有没有办法检查应用程序所需的特权?

应用程序可以通过两种方式使Windows显示UAC提示以获取更高的特权:

启发式

Windows包括一个基于启发式的检测机制,该机制试图检测您的应用程序是否应归类为“安装程序”,因此应要求提升的特权。 这是自动完成的,如果它具有错误警报,则可能导致问题,并且这会导致您的程序需要提升的特权。

明确的

如果您不想依靠自动检测系统来正确分类您的应用程序,则可以通过修改应用程序清单来明确声明您的应用程序所需的海拔高度。

引用此MSDN文章

asInvoker请求没有其他权限。 此级别不需要其他信任提示。

如果要确保应用程序不会被错误分类,这就是您应使用的情况。

如果您不会在应用清单中明确标记它,则它不应要求提升的特权,但是您需要确保所有功能都能正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM