部署部署项目时,可执行文件不请求提升

时间:2011-09-13 16:06:47

标签: vb.net visual-studio-2010 setup-deployment

我创建了一个可执行文件,由另一个应用程序调用,用于需要UAC提升权限的进程。如果我使用下面的清单构建这个项目它会请求UAC好,如果我将这个项目输出添加到我的安装项目,它是否在没有UAC的情况下创建它?

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
   <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="CreateApp" type="win32"/>
   <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

知道这是为什么或者是否可以将它作为清单的安装项目的一部分?

1 个答案:

答案 0 :(得分:1)

InstallExecuteSequence中的自定义操作已作为Windows Installer服务的子进程运行。所以他们继承了他们的特权,并且没有使用清单。

要运行具有完全权限的自定义操作,您应将其安排为deferred with no impersonation

如果您没有将EXE用作自定义操作,并且只是从其他进程启动它,请确保使用ShellExecute