VB.NET Program App以管理员身份运行

时间:2014-02-18 17:27:35

标签: vb.net windows winforms security permissions

我有一个可以正常运行的VB.NET应用程序但是当我需要保存到文件时,我得到了拒绝访问文件夹,因为我的应用程序没有以管理员身份运行。

我已尝试过.NET上的所有内容,但我的应用程序STILL将无法以管理员身份运行。

我做过的事情:

  • 使用<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
  • 向我的应用添加了清单文件
  • 创建了一个安装程序,用于在注册表中添加RUNASADMIN条目

但无济于事。基本上我的应用程序需要以某种方式设置以保存到程序文件夹中的本地文件。

关于我如何解决此问题的任何想法?

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
  <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
    <!-- UAC Manifest Options
        If you want to change the Windows User Account Control level replace the 
        requestedExecutionLevel node with one of the following.

    <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
    <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
    <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

        Specifying requestedExecutionLevel node will disable file and registry virtualization.
        If you want to utilize File and Registry Virtualization for backward 
        compatibility then delete the requestedExecutionLevel node.
    -->
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
  </requestedPrivileges>
</security>

1 个答案:

答案 0 :(得分:0)

尝试嵌入后,我需要将XML文件保存到appdata目录并保存在那里。这样UAC就不会干涉。