VS2017/VS 2019从任务栏运行为管理员

Pau*_*515 86 visual-studio visual-studio-2017 visual-studio-2019

当我从任务栏的最近列表中选择项目时,我想以管理员身份运行Visual Studio 2017/2019 ,即.通过Explorer/Shell快捷方式打开项目时.

我确实使用了设置:属性 - >快捷方式 - >高级 - >以管理员身份运行复选框.

不幸的是,这不会导致devenv以管理员身份运行.

有想法该怎么解决这个吗?

Ste*_*edy 240

  1. 关闭Visual Studio的所有实例
  2. 右键单击任务栏中的Visual Studio 2017/2019图标
  3. 右键单击Visual Studio 2017/2019,然后单击"属性"
  4. 单击打开文件位置按钮
  5. 右键单击该文件夹中的devenv.exe文件
  6. 选择疑难解答兼容性
  7. 选择疑难解答程序
  8. 选择该程序需要其他权限
  9. 单击"测试程序"并等待程序启动
  10. 然后单击下一步按钮
  11. 选择是,保存此程序的这些设置
  12. 单击关闭
  13. 从最近的列表重新打开您的项目

  • 你会认为MS会有一个vs设置 - '总是以管理员身份运行' - 因为任何非常重要的开发都需要它 (5认同)
  • 自从引入vs版本选择器以来,这也是所有Visual Studio早期版本的解决方案.任何投票的人要么是个人的,要么是拒绝接受现状.感谢您确认此方法仍然有效,我只需要在尝试之前检查:) (3认同)
  • @pm100 不知何故,VSCommands VS Addin 有这个设置。但我确实同意 VS 中的 Web 开发和 IIS 支持的性质应该提供这种内置功能。如果 IIS 用于解决方案,您需要管理员权限。VS 可能应该自动检测到并重新启动对它们的请求。 (2认同)
  • 每当我需要安装新版本的 VS 时,我都会偶然发现这个问题......现在在 2019 年,相同的解决方案仍然有效 (2认同)

Gab*_*uci 16

史蒂夫回答中的步骤的效果是添加了一个注册表值.您可以通过命令行添加该注册表值来避免所有这些步骤.出于某种原因,我发现需要一段时间才能生效,但注销/登录应该会立即生效.

出于某种奇怪的原因,我发现在我的情况下,Windows并没有检查HKLM.它只是看着HKCU.所以我设置了两个.但对于登录的其他用户来说,HKLM应该派上用场.

还包括为VSLauncher.exe设置相同的值,这解决了其他问题.

在admistrator命令提示符中:

reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" /d "^ RUNASADMIN"

reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" /d "^ RUNASADMIN"
Run Code Online (Sandbox Code Playgroud)

或者,如果您更喜欢.reg文件:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\MSEnv\\VSLauncher.exe"="^ RUNASADMIN"

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\MSEnv\\VSLauncher.exe"="^ RUNASADMIN"
Run Code Online (Sandbox Code Playgroud)

  • 虽然这可能有用,但对于在其他地方安装了此应用程序的人、VS 的未来版本或希望以相同方式运行的其他应用程序的人来说,它不起作用(复制和粘贴)。 (2认同)
  • 编辑注册表并不适合所有人。您必须非常小心,否则最终会导致整个操作系统崩溃。因此,我会投票并推荐史蒂夫的答案作为您可以拥有的最安全的解决方案!再说一遍,这是我的意见! (2认同)