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

Bri*_*iec 997 uac visual-studio windows-8

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

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

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

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

Sie*_*ers 1981

在Windows 8和10中,您必须右键单击devenv.exe并选择"疑难解答兼容性".

  1. 选择"排除程序故障"
  2. 选中"该程序需要其他权限"
  3. 点击下一步"
  4. 点击"测试程序......"
  5. 等待程序启动
  6. 点击下一步"
  7. 选择"是,保存此程序的这些设置"
  8. 点击"关闭"

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

禁用Visual Studio devenv解决方案保存对话框


如果您改变主意并希望撤消"以管理员身份运行"兼容性设置,请在此处查看答案:如何在Visual Studio 2015中修复无法识别的Guid格式

  • 如果安装了多个版本的Visual Studio,您可能还希望在`C:\ Program Files(x86)\ Common Files\Microsoft Shared\MSEnv\VSLauncher.exe`文件中执行此操作.此外,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` (181认同)
  • @RobertKoritnik这相当于在`HKEY_CURRENT_USER\Software\Microsoft\Windows NT下添加名为`C:\ Program Files(x86)\ Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe`和值`RUNASADMIN`的注册表项\ CURRENTVERSION\AppCompatFlags\Layers`.删除条目会恢复设置. (93认同)
  • **你如何将它恢复到原来的状态?** (59认同)
  • 这是我遇到的最佳解决方案.现在我可以再次从Windows资源管理器打开.sln文件! (39认同)
  • 同样,它还解决了能够以管理员身份运行的固定解决方案.谢谢. (38认同)
  • 适用于Windows 10/VS2015 (13认同)
  • @rushonerok是的,它适用于Windows 10,VS2015.`devenv.exe`is`C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe的路径 (5认同)
  • @MrGrigg它绝对是在Windows 8上工作.我只是按照上面的步骤操作,让VS2012始终以管理员模式运行. (4认同)
  • 如果由于某种原因(由于它对我而言)不适合你的某些原因 - 请将上面的条目添加到`HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers`中. (2认同)
  • 按照这些步骤,由于某种原因,我收到一条错误消息"devenv.exe不兼容".我遵循了Piotr Szmyd的建议.这解决了这个问题.谢谢! (2认同)
  • 我制作了一个 *.reg 文件来应用 VS 2017 的以管理员​​身份运行设置和版本选择器:https://gist.github.com/liamdawson/3515d9571079bb2ba98c81277654ee23 (2认同)
  • 不幸的是,它不适用于 Windows 11。右键单击exe后没有故障排除选项。 (2认同)

Bri*_*iec 168

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

  1. 右键单击Visual Studio图标
  2. Properties
  3. 根据Shortcut tab选择Advanced
  4. 校验 Run as administrator

在管理模式下设置默认操作

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

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

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

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
EnableLUA - DWORD 1-Enabled, 0-Disabled
Run Code Online (Sandbox Code Playgroud)

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

  • @Boomerangertanger哦不,不是我的地铁应用程序!</讽刺> (19认同)
  • 如果您关闭UAC,某些Metro应用程序(如SkyDrive)将无法运行. (8认同)
  • @ClaraOnager右键单击开始屏幕中的图标,然后选择"打开文件位置".这将打开保存快捷方式的文件夹,然后您可以从那里查看它的属性. (3认同)
  • 地铁应用程序摇摇欲坠。结束。 (2认同)

Not*_*ple 59

注意在最近的VS版本(2015+)中,似乎此扩展不再存在/具有此功能.


您还可以通过Squared Infinity 下载VSCommands for VS2012,它具有将其更改为以管理员身份运行的功能(以及其他一些很酷的部分)

在此输入图像描述

更新

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

  • 从任务栏快捷方式的快速访问菜单启动项目时,VSCommands功能也可以使用.很棒的东西! (3认同)
  • 我更新了快捷方式权限后安装了这个,所以我不确定这有什么不同.除了这个插件的管理员权限有一些很好的功能,值得自己检查. (2认同)

小智 36

  1. 在Windows 8的"开始"菜单上,选择所有应用
  2. 右键单击Visual Studio 2010图标
  3. 选择打开文件位置
  4. 右键单击Visual Studio 2010快捷方式图标
  5. 单击高级按钮
  6. 选中Run as Administrator复选框
  7. 单击确定

  • 很好的答案,但仅在从图标启动时才有效,如果您右键单击图标并启动固定解决方案,则无效。在 Windows 8 和 10 上尝试过,目前只有故障排除方法适用于我启动固定解决方案。 (2认同)

dea*_*dog 21

这是我对SuperUser上类似帖子的回答的副本:

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

在打开任何.sln文件时始终以管理员身份运行Visual Studio :

  1. 导航到C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe.
  2. 右键单击VSLauncher.exe并选择" 疑难解答兼容性".
  3. 选择疑难解答程序.
  4. 选中该程序需要其他权限,然后单击下一步.
  5. 单击测试程序...按钮以启动VS.
  6. 点击下一步,然后打是的,保存这些设置这个程序,然后关闭布敦.

要让Visual Studio 在直接打开visual studio时始终以管理员身份运行,请对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扩展

为Visual Studio安装免费的VSCommands扩展(在Visual Studio Extensions库中),然后通过转到工具 - > VSCommands - >选项 - > IDE增强 - >常规将其配置为始终让Visual Studio以管理员权限启动并检查Always start Visual Studio with elevated permissions然后单击"保存"按钮.

注意: VSCom目前无法使用VSCommands,但他们的网站表示他们正在努力更新它以支持VS 2015.

我的看法

我更喜欢选项2,因为:

  • 它还允许您轻松关闭此功能.
  • VSCommands带有许多其他强大的功能,所以我总是安装它.
  • 它比选项1更容易做到.


Dan*_*ang 14

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".

这应该可以解决您的问题.我也在博客上写过这个.


小智 7

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

我是这样做的:

  1. 在VS中创建一个名为"Exe Manifests"的项目.(我认为任何版本都可以使用,但我使用的是2013 Pro.此外,你的名字并不重要.)
  2. "将现有项添加到项目中",浏览到Visual Studio exe,然后单击"确定".就我而言,它是"C:\ Program Files(x86)\ Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe".
  3. 双击"devenv.exe"文件,该文件现在应该在项目中列为文件.它应该在资源编辑器中调出exe.
  4. 展开"RT_MANIFEST"节点,然后双击"1".这将在二进制编辑器中打开可执行文件的清单.
  5. 找到requestedExecutionLevel标记并将"asInvoker"替换为"requireAdministrator".一个la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
  6. 保存文件.

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

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


Gog*_*are 7

这些对我来说都不起作用。我让它始终以管理员身份启动的方法是修改注册表。

1. Just start regedit.exe.
2. Navigate to Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
3. Right Click New->String Value
4. Add C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\devenv.exe (or the correct path for your system)
5. Right Click on this entry and select Modify.
6. Add for Value Data: ~ RUNASADMIN.
Run Code Online (Sandbox Code Playgroud)

全做完了。


小智 6

如果您像我一样使用Total Commander,那么Total Commander也应该像管理员一样运行.然后,您可以在同一个SQL Server管理实例中双击打开sql文件,或者双击打开任何Visual Studio文件,而不打开多个实例.

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


Mik*_*ica 6

我在EightForums(选项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"
Run Code Online (Sandbox Code Playgroud)


Moh*_*MVP 6

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

  • 右键单击 Visual Studio > 选择兼容性疑难解答。
  • 选择疑难解答程序。
  • 检查程序需要额外的权限。
  • 单击测试程序。
  • 稍等片刻,直到程序启动。点击下一步。
  • 选择是,为此程序保存这些设置。
  • 等待解决问题。
  • 确保最终状态是固定的。单击关闭。

检查详细步骤,以及在Visual Studio 中始终以管理员身份打开 VS 的其他方法需要应用程序具有提升的权限


Blu*_*Man 5

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

  • 这适用于属性窗口具有兼容性选项卡的所有系统,而 Windows 8 没有(尽管 Windows 8.1 有)。 (2认同)