在调试模式下运行应用程序时,Manifest不会强制Visual Studio 2013在Admin下重新启动

Tar*_*ski 10 manifest visual-studio-2013

这适用于VS2010VS2012.但是在VS2013应用程序中(按"运行"或F5)只是以我的用户权限开始,无法访问某些资源(我正在使用HttpListener).

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
  <security>
    <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
      <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
    </requestedPrivileges>
  </security>
</trustInfo>
Run Code Online (Sandbox Code Playgroud)

我试图谷歌,试图生成新的清单,从MSDN复制它的内容,但没有任何帮助.在VS2013的这一部分有什么变化吗?

Update1:
那是一个部分.这是完整的清单内容:

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
  <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
  </requestedPrivileges>
</security>
</trustInfo>

<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
  <application></application>
</compatibility>

</asmv1:assembly>
Run Code Online (Sandbox Code Playgroud)

Update2:
这里的Okey是一个简单的例子:当我运行编译的.exe文件时,UAC要求管理员权限.但是当我从VS2013运行它时(通过按"运行"或F5)它不会!如果您使用VS2012/VS2010打开相同的项目,他们会要求在管理员下重新启动.
您可以快速检查:
VS2013中创建控制台应用程序,添加清单并设置level ="requireAdministrator".然后运行或按F5(按Ctrl-F5VS2013在admin下运行应用程序). 但这不是VS2012/VS2010的行为! 我们怎样才能得到旧的行为?

Update3:
在这里投票或通知我另一张票.

Han*_*ant 14

您需要禁用托管进程选项以获取VS重新启动提示.单击项目+属性,调试选项卡,取消选中"启用Visual Studio主机进程"复选框.立即启动VS可能更容易.右键单击快捷方式"以管理员身份运行".

不完全确定这是一个错误还是一个功能.请密切关注此Connect报告以了解更多信息.


更新:看起来像一个错误,反馈报告被关闭为"固定".不幸的是,当修复程序将其作为我们的机器时它没有提示.也许未来的VS2013更新,肯定是下一个版本.
Update2:修复程序进入VS2013 Update 3.