C# 如何申请管理员权限?
我需要我正在制作的程序来请求管理员权限。如果用户拒绝弹出消息,程序将继续,但某些功能将丢失 我已尝试将下面的代码放入app.manifest文件中,但当用户拒绝程序权限时,程序不会启动C# 如何申请管理员权限?,c#,winforms,admin,uac,C#,Winforms,Admin,Uac,我需要我正在制作的程序来请求管理员权限。如果用户拒绝弹出消息,程序将继续,但某些功能将丢失 我已尝试将下面的代码放入app.manifest文件中,但当用户拒绝程序权限时,程序不会启动 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> <requestedExecutionLevel level="highestAvailable" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
没有办法做到这一点。当你的程序运行时,已经太晚了——你要么有管理员权限,要么没有。如果没有,获得这些管理员权限的唯一方法是以管理员身份重新启动应用程序。应用程序必须使用ProcessStartInfo Verb=“RunAs”重新启动自身。然后关闭当前实例(非管理员)。原来的问题不一样@我知道这一点,因为我没有将问题标记为重复问题。我提到的问题只是关于“要么全部,要么什么都没有”的部分,以及应用程序自身决定其提升需求的事实。好的,但这个问题现在已结束,无法发布答案。你只需要发表一条评论。@i486就像我一样。是帕特里克霍夫曼结束了这个问题,但我已经提名这个问题重新开始!无论如何,还有另一种方法:您可以使用[SecurityPermissionAttribute(SecurityAction.RequestMinimum,Assertion=true)]
对方法进行属性化,并在调用周围使用try
/catch
。