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

时间:2017-03-10 16:30:23

标签: visual-studio visual-studio-2017 visual-studio-2019

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

我确实使用了设置:properties - >快捷方式 - >高级 - >以管理员身份运行。

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

有关如何解决此问题的任何想法?

2 个答案:

答案 0 :(得分:202)

  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. 从最近的列表中重新打开您的项目

答案 1 :(得分:15)

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

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

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

这将同时处理VS2017和2019.如果您只安装了其中一个,请删除另一个。

另外,如果您更改了VS安装到的文件夹,则将路径更改为devenv.exe,或者只使用Steve的答案以另一种方式执行此操作。

在管理员命令提示符中:

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"

或者,如果您更喜欢.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"