我正在使用vb.net开发一个应用程序。要执行某些任务,应用程序需要机器中的管理员权限。如何在执行程序期间要求权限?
切换用户帐户执行应用程序的一般方法是什么?换句话说,应用程序是否有某种方式可以在任意用户帐户下运行?
答案 0 :(得分:4)
您可以编辑项目设置中的 UAC设置(在VB 2008中)。寻找说
的行 <requestedExecutionLevel level="asInvoker" uiAccess="false" />
将level =“asInvoker”更改为
level="asInvoker"
(与父进程相同的访问令牌)level="requireAdministrator
(需要完全管理员)level="highestAvailable"
(当前用户可用的最高权限)答案 1 :(得分:3)
互联网上有几篇关于在Vista中开发提升过程的文章,但实际上提升请求涉及在应用程序清单文件中装饰具有提升状态的.NET程序集和WIN32可执行文件(可以嵌入或并排)。 / p>
有一篇关于您的问题的优秀博客文章,其中提供了您可能需要的代码:
答案 2 :(得分:3)
我还没有这样做,但我相信你会去(在VS 2008中)项目设置 - &gt;单击应用程序选项卡,然后单击“查看UAC设置”按钮。这将打开您的app.manifest文件。我认为有一个标签可以保存您正在寻找的选项。我有一些选项可以让你开始注意:
答案 3 :(得分:1)
IN VS 2015:转到:项目 - &gt; (项目名称)属性...... - &gt;申请 - &gt;查看Windows设置并在app.manifest中找到(第19行):并将asInvoker更改为: