首页 文章

您是否可以强制Visual Studio始终以Windows 8中的管理员身份运行?

提问于
浏览
929

在Windows 7中,您可以进入程序兼容性设置并选中以始终以管理员身份运行 . Windows 8中是否有类似的选项?

我一直在我的机器上禁用UAC,并且在我的Windows 8升级之后做了同样的事情,或者我认为 . 事实证明没有 off 选项,只关闭通知 .

这意味着尽管属于管理员组,但没有任何内容作为管理员运行 . 当我尝试调试(附加到进程,而不是F5)时,我需要继续关闭并重新打开我的控制台\ Visual Studio,这非常令人沮丧 .

真的很烦人,我需要记得采取额外的步骤以管理员的身份打开它,或者告诉它在我第一次调试时关闭并重新打开 .

12 回答

  • 1892

    这是my answer to a similar post on SuperUser的副本:

    选项1 - 将VSLauncher.exe和DevEnv.exe设置为始终以管理员身份运行

    要使Visual Studio始终以admin when opening any .sln file 运行:

    • 导航至 C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe .

    • 右键单击 VSLauncher.exe 并选择 Troubleshoot compatibility .

    • 选择 Troubleshoot program .

    • 勾选 The program requires additional permissions 并点击下一步 .

    • 单击 Test the program... 按钮启动VS.

    • 单击“下一步”,然后单击 Yes, save these settings for this program ,然后单击 close 按钮 .

    要让Visual Studio始终作为admin when just opening visual studio directly 运行,请对DevEnv.exe文件执行相同的操作 . 这些文件位于:

    Visual Studio 2010

    C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe

    Visual Studio 2012

    C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe

    Visual Studio 2013

    C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe

    Visual Studio 2015

    C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe

    Visual Studio 2017

    C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS SKU]\Common7\IDE\devenv.exe

    选项2 - 对Visual Studio使用VSCommands扩展

    安装免费VSCommands extension for Visual Studio(它在the Visual Studio Extensions Gallery中)然后将其配置为始终让Visual Studio以管理员权限启动,方法是转到工具 - > VSCommands - >选项 - > IDE增强 - >常规并选中 Always start Visual Studio with elevated permissions 并单击保存按钮 .

    Note: VSCommands目前不适用于VS 2015,但他们的网站表示他们正在努力更新它以支持VS 2015 .

    我的意见

    我更喜欢选项2,因为:

    • 它还允许您轻松关闭此功能 .

    • VSCommands带有许多其他强大的功能,所以我总是安装它 .

    • 它比选项1更容易 .

  • 58

    右键单击visual studio,并在每次打开时选择 run as administrator .

    此外,您还可以检查兼容性故障排除

    • 右键单击Visual Studio>选择疑难解答兼容性 .

    • 选择“疑难解答程序” .

    • 检查程序需要其他权限 .

    • 点击测试程序 .

    • 等待一段时间,直到程序启动 . 单击“下一步” .

    • 选择是,保存此程序的这些设置 .

    • 等待解决问题 .

    • 确保最终状态已修复 . 单击“关闭” .

    检查详细步骤link .

  • 13

    在查看超级用户后,我找到this question,它解释了如何使用开始屏幕上的快捷方式执行此操作 . 同样,当Visual Studio固定到任务栏时,您也可以这样做 . 在任何一个位置:

    • 右键单击Visual Studio图标

    • 转到 Properties

    • Shortcut tab 下选择 Advanced

    • 检查 Run as administrator

    与Windows 7不同,这仅适用于从更改的快捷方式启动应用程序的情况 . 更新两个Visual Studio快捷方式后,当您从资源管理器中打开解决方案文件时,它似乎也可以工作 .

    Update Warning: 看起来运行具有提升权限的Visual Studio的主要缺陷之一是,因为资源管理器不会将文件拖放到Visual Studio中进行编辑 . 您需要通过文件打开对话框打开它们 . 你也不能双击任何与Visual Studio相关的文件,并在Visual Studio中打开它(除了它看起来的解决方案),因为你会收到一条错误消息说 There was a problem sending the command to the program. 一旦我取消选中总是以提升的权限开始(使用VSCommands)然后我能够直接打开文件并将它们放入Visual Studio的开放实例中 .

    Update For The Daring: 尽管没有像过去那样关闭UAC的UI,至少我看到过,你仍然可以通过注册表这样做 . 编辑的关键是:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    EnableLUA - DWORD 1-Enabled, 0-Disabled
    

    更改此Windows后,将提示您重新启动 . 重新启动后,如果您是管理员,您将返回使用管理员权限运行的所有内容 . 我上面报告的问题现在也消失了 .

  • 5

    VSCommands对我不起作用,当我安装除Visual Studio 2012之外的Visual Studio 2010时导致问题 .

    经过一些实验,我找到了诀窍:

    转到 HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers 并添加名为 "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" 且值为 "RUNASADMIN" 的条目 .

    这应该可以解决您的问题 . 我也是blogged .

  • 156

    如果您像我一样使用 Total Commander ,那么您应该对Total Commander执行相同操作,以便始终以管理员身份运行 . 然后,您将能够在同一SQL Server管理实例中双击打开sql文件,或打开任何Visual双击Studio文件,不打开多个实例 .

    此疑难解答程序为任何程序的HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers添加注册表值,因此如果您想直接编写它,您可以 .

  • 5

    我在EightForums(Option 8)上找到了一种简单的方法,在HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers下创建一个字符串值 . 将名称设置为程序的路径,将值设置为~RUNASDMIN . 下次打开程序时,它将以管理员身份打开

    [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
        "C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\IDE\\devenv.exe"="~RUNASADMIN"
    
  • 4

    如果项目的应用程序清单指定了管理 requestedExecutionLevel ,Visual Studio会自动提升自身,因此您只需编辑它 . Visual Studio将检测到该问题,并在需要时以管理员身份重新启动 .

  • 1

    只需在Program Files目录(或其他位置)中找到该程序即可 . 右键单击EXE文件,在底部的第二个选项卡上,选中强制运行具有管理权限的程序的复选框 . 从现在开始,exe文件的所有快捷方式都将以管理权限激发:)

  • 4
    • 在Windows 8的“开始”菜单上,选择所有应用程序

    • 右键单击Visual Studio 2010图标

    • 选择“打开文件位置”

    • 右键单击Visual Studio 2010快捷方式图标

    • 单击“高级”按钮

    • 选中以管理员身份运行复选框

    • 单击“确定”

  • 19

    NOTE 在最近的VS版本(2015)中似乎这个扩展不再存在/具有此功能 .


    你也可以下载Squared Infinity的VSCommands for VS2012,它有一个功能,可以改变它以管理员身份运行(以及其他一些很酷的点点滴滴)

    enter image description here

    Update

    可以使用 Tools - > Extensions and Updates 选择 Online 并搜索 vscommands 从Visual Studio菜单栏安装命令,然后根据是使用2012还是2013(或更高版本)选择 VSCommands for Visual Studio 20XX 并下载并安装 .

  • 3

    在Windows 8和10中,您必须右键单击 devenv.exe 并选择"Troubleshoot compatibility" .

    • 选择"Troubleshoot program"

    • 检查"The program requires additional permissions"

    • 点击"Next"

    • 点击"Test the program..."

    • 等待程序启动

    • 点击"Next"

    • 选择"Yes, save these settings for this program"

    • 点击"Close"

    如果在打开Visual Studio时它要求保存对devenv.sln的更改,请参阅此答案以禁用它:

    Disable Visual Studio devenv solution save dialog

  • 35

    我知道这有点晚了,但我只想通过修改(读取,“黑客”)devenv.exe文件的清单来弄清楚如何做到这一点 . 我应该首先来到这里,因为所述解决方案似乎更容易一些,并且可能更多地得到微软的支持 . :)

    我是这样做的:

    • 在VS中创建一个名为"Exe Manifests"的项目 . (我认为任何版本都可以使用,但我使用的是2013 Pro . 此外,你的名字并不重要 . )

    • "Add existing item"到项目,浏览到Visual Studio exe,然后单击“确定” . 就我而言,它是"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe" .

    • 双击现在应在项目中列为文件的"devenv.exe"文件 . 它应该在资源编辑器中调出exe .

    • 展开"RT_MANIFEST"节点,然后双击"1" . 这将在二进制编辑器中打开可执行文件的清单 .

    • 找到requestedExecutionLevel标记并将"asInvoker"替换为"requireAdministrator" . 一个la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>

    • 保存文件 .

    您刚刚保存了添加到项目中的可执行文件的副本 . 现在,您需要备份原始文件并将修改后的exe文件复制到安装目录中 .

    正如我所说,这可能不是正确的方法,但似乎有效 . 如果有人知道任何需要发生的负面影响或必要的手腕拍打,请加入!

相关问题