在Windows 7中,你可以进入程序兼容性设置并勾选“关闭”以始终以管理员身份运行。Windows 8中也有类似的选项吗?

我总是在我的电脑上禁用UAC,在我升级Windows 8之后也是如此,至少我是这么认为的。结果是没有关闭选项,只能关闭通知。

这意味着以管理员身份运行任何内容,尽管在管理员组中。当我尝试调试(附加到进程,而不是F5)时,我需要不断关闭和重新打开我的控制台\Visual Studio,这非常令人沮丧。

这真的很烦人,我需要记住以管理员身份打开它,或者在我第一次进行调试时告诉它关闭并重新打开。


当前回答

以下是我对SuperUser上一篇类似文章的回复:

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

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

打开C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe。 右键单击VSLauncher.exe,选择“排除兼容性问题”。 选择故障排除程序。 选中该程序需要额外的权限,然后点击下一步。 点击测试程序…按钮启动VS。 单击Next,然后单击Yes,为该程序保存这些设置,然后单击close按钮。

要让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 -使用VSCommands扩展Visual Studio

为Visual Studio安装免费的VSCommands扩展(在Visual Studio Extensions Gallery中),然后将其配置为始终具有Visual Studio以管理权限启动,点击工具-> VSCommands -> Options -> IDE Enhancements -> General,并勾选始终以提升权限启动Visual Studio,然后单击保存按钮。

注意:VSCommands目前还不能用于VS 2015,但是他们的网站说他们正在更新以支持VS 2015。

我的意见

我更喜欢选项2,因为:

它还允许您轻松地关闭此功能。 VSCommands附带了很多其他很棒的功能,所以我总是安装它。 这比选择一要简单。

其他回答

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”。

这应该能解决你的问题。我也为此写过博客。

在Windows 8开始菜单中选择“所有应用程序” 右击Visual Studio 2010图标 选择打开文件位置 右键单击Visual Studio 2010快捷图标 单击“高级”按钮 选中“以管理员身份运行”复选框 单击OK

这些对我都没用。我总是以管理员身份启动它的方法是修改注册表。

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.

全部完成。

我知道这有点晚了,但我只是通过修改(读作“黑客”)devenv.exe文件的清单来做到这一点。我应该先讲到这里,因为所述的解决方案似乎更简单一些,而且可能更受微软的支持。:)

我是这样做的:

Create a project in VS called "Exe Manifests". (I think any version will work, but I used 2013 Pro. Also, it doesn't really matter what you name it.) "Add existing item" to the project, browse to the Visual Studio exe, and click Okay. In my case, it was "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe". Double-click on the "devenv.exe" file that should now be listed as a file in your project. It should bring up the exe in a resource editor. Expand the "RT_MANIFEST" node, then double-click on "1" under that. This will open up the executable's manifest in the binary editor. Find the requestedExecutionLevel tag and replace "asInvoker" with "requireAdministrator". A la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel> Save the file.

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

正如我所说,这可能不是正确的方法,但它似乎有效。如果有人知道任何负面影响或必要的惩罚,请插话!

在Windows 8、Windows 10和Windows 11中,您必须右键单击devenv.exe并选择“排除兼容性问题”。

选择“故障排除程序” 勾选“该程序需要额外权限” 点击“下一步” 点击“测试程序…” 等待程序启动 点击“下一步” 选择“是,为此程序保存这些设置” 点击“关闭”

如果,当你打开Visual Studio时,它会要求将更改保存到devenv。Sln,看到这个答案禁用它:

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


如果您改变主意并希望撤消“以管理员身份运行”兼容性设置,请参阅这里的答案:如何修复Visual Studio 2015中无法识别的Guid格式