在Windows 7中,您可以进入程序兼容性设置并选中以始终以管理员身份运行 . Windows 8中是否有类似的选项?
我一直在我的机器上禁用UAC,并且在我的Windows 8升级之后做了同样的事情,或者我认为 . 事实证明没有 off
选项,只关闭通知 .
这意味着尽管属于管理员组,但没有任何内容作为管理员运行 . 当我尝试调试(附加到进程,而不是F5)时,我需要继续关闭并重新打开我的控制台\ Visual Studio,这非常令人沮丧 .
真的很烦人,我需要记得采取额外的步骤以管理员的身份打开它,或者告诉它在我第一次调试时关闭并重新打开 .
12 回答
这是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更容易 .
右键单击visual studio,并在每次打开时选择 run as administrator .
此外,您还可以检查兼容性故障排除
右键单击Visual Studio>选择疑难解答兼容性 .
选择“疑难解答程序” .
检查程序需要其他权限 .
点击测试程序 .
等待一段时间,直到程序启动 . 单击“下一步” .
选择是,保存此程序的这些设置 .
等待解决问题 .
确保最终状态已修复 . 单击“关闭” .
检查详细步骤link .
在查看超级用户后,我找到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,至少我看到过,你仍然可以通过注册表这样做 . 编辑的关键是:
更改此Windows后,将提示您重新启动 . 重新启动后,如果您是管理员,您将返回使用管理员权限运行的所有内容 . 我上面报告的问题现在也消失了 .
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 .
如果您像我一样使用 Total Commander ,那么您应该对Total Commander执行相同操作,以便始终以管理员身份运行 . 然后,您将能够在同一SQL Server管理实例中双击打开sql文件,或打开任何Visual双击Studio文件,不打开多个实例 .
此疑难解答程序为任何程序的HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers添加注册表值,因此如果您想直接编写它,您可以 .
我在EightForums(Option 8)上找到了一种简单的方法,在HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers下创建一个字符串值 . 将名称设置为程序的路径,将值设置为~RUNASDMIN . 下次打开程序时,它将以管理员身份打开
如果项目的应用程序清单指定了管理
requestedExecutionLevel
,Visual Studio会自动提升自身,因此您只需编辑它 . Visual Studio将检测到该问题,并在需要时以管理员身份重新启动 .只需在Program Files目录(或其他位置)中找到该程序即可 . 右键单击EXE文件,在底部的第二个选项卡上,选中强制运行具有管理权限的程序的复选框 . 从现在开始,exe文件的所有快捷方式都将以管理权限激发:)
在Windows 8的“开始”菜单上,选择所有应用程序
右键单击Visual Studio 2010图标
选择“打开文件位置”
右键单击Visual Studio 2010快捷方式图标
单击“高级”按钮
选中以管理员身份运行复选框
单击“确定”
NOTE 在最近的VS版本(2015)中似乎这个扩展不再存在/具有此功能 .
你也可以下载Squared Infinity的VSCommands for VS2012,它有一个功能,可以改变它以管理员身份运行(以及其他一些很酷的点点滴滴)
Update
可以使用
Tools
- >Extensions and Updates
选择Online
并搜索vscommands
从Visual Studio菜单栏安装命令,然后根据是使用2012还是2013(或更高版本)选择VSCommands for Visual Studio 20XX
并下载并安装 .在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
我知道这有点晚了,但我只想通过修改(读取,“黑客”)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文件复制到安装目录中 .
正如我所说,这可能不是正确的方法,但似乎有效 . 如果有人知道任何需要发生的负面影响或必要的手腕拍打,请加入!