VS2017 / VS 2019 Executar como Admin na barra de tarefas

98

Eu gostaria de executar o Visual Studio 2017/2019 como administrador ao selecionar um projeto da lista recente na barra de tarefas , ou seja, ao abrir um projeto por meio de atalhos do Explorer / Shell.

Eu usei a configuração: propriedades -> atalho -> avançado -> caixa de seleção executar como administrador.

Infelizmente, isso não faz com que devenv seja executado como Administrador.

Alguma ideia de como consertar isso?

Paul0515
fonte

Respostas:

262
  1. Feche todas as instâncias do Visual Studio
  2. Clique com o botão direito no ícone do Visual Studio 2017/2019 em sua barra de tarefas
  3. Clique com o botão direito em Visual Studio 2017/2019 e clique em Propriedades
  4. Clique no botão Abrir localização do arquivo
  5. Clique com o botão direito no arquivo devenv.exe nessa pasta que aparece
  6. Selecione Resolver problemas de compatibilidade
  7. Selecione o programa de solução de problemas
  8. Selecione O programa requer permissões adicionais
  9. Clique em Testar o programa e aguarde o lançamento do programa
  10. Em seguida, clique no botão Avançar
  11. Selecione Sim, salve essas configurações para este programa
  12. Clique em Fechar
  13. Reabra seu projeto da lista recente
Steve Kennedy
fonte
4
esta também é a mesma solução para todas as versões anteriores do Visual Studio, desde que o seletor de versão vs foi introduzido. quem quer que seja negativo está tornando-o pessoal ou se recusando a aceitar o status quo. obrigado pela confirmação de que este método ainda funciona, eu só precisava verificar antes de tentar :)
Shaun Wilson
6
você pensaria que o MS teria uma configuração vs - 'sempre executar como administrador' - já que qualquer desenvolvimento não trivial requer isso
pm100
1
@ pm100 Bem, de alguma forma, existem VSCommands VS Addin que têm essa configuração. Mas eu concordo que a natureza do desenvolvimento web e o suporte IIS no VS devem fornecer isso embutido. Se o IIS estiver sendo usado para soluções, você precisa de direitos de administrador. O VS talvez deva detectar isso automaticamente e reiniciar a solicitação por eles.
Robert Koritnik
Apenas para sua informação: isso faz com que o VS peça para ser executado como administrador sempre que for iniciado.
Jeff B de
1
Eu só tropeço nisso sempre que preciso instalar uma nova versão do VS ... Agora em 2019, a mesma solução ainda está funcionando
moi_meme
16

O efeito das etapas na resposta de Steve é ​​a adição de um único valor de registro. Você pode evitar todas essas etapas apenas adicionando esse valor de registro por meio da linha de comando. Por algum motivo, descobri que demora um pouco para fazer efeito, mas um logout / login deve fazer com que ele entre em vigor imediatamente.

Por algum motivo estranho, descobri que, no meu caso, o Windows não estava verificando o HKLM. Ele estava apenas olhando para HKCU. Então, eu configurei ambos. Mas para outros usuários que fazem login, o HKLM deve ser útil.

Também está incluído a configuração do mesmo valor para VSLauncher.exe, que resolve outros problemas.

Isso cuida tanto do VS2017 quanto do 2019. Se você tiver apenas um deles instalado, remova as linhas do outro.

Além disso, se você alterou a pasta em que o VS é instalado, altere o caminho devenv.exeou apenas use a resposta de Steve para fazer o contrário.

Em um prompt de comando do administrador:

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"

Ou, se você preferir um arquivo .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"
Gabriel luci
fonte
Embora isso possa ser útil, não vai funcionar (copiar e colar) para pessoas que têm este aplicativo instalado em outro lugar, versão futura do VS - ou outros aplicativos que as pessoas queiram executar da mesma maneira.
Anthony Nichols
1
Bem, quando eu escrevi isso, o título da pergunta dizia especificamente apenas VS2017 :) Desde que isso foi alterado, adicionei as linhas para cuidar de 2019 e uma nota sobre isso.
Gabriel Luci
1
Editar Registro não é para todas as pessoas. Você tem que ter muito cuidado ou você acaba travando todo o seu sistema operacional. Portanto, eu votaria a favor e recomendaria a resposta de Steve como a solução mais segura que você poderia ter! Novamente, essa é minha opinião!
Vincy de
@Vincy Claro, mas é provável que, se estiver usando o Visual Studio, você conheça uma ou duas coisas sobre o Windows e não tenha medo de modificar o registro diretamente. Não é difícil descobrir para que servem certas chaves de registro.
Gabriel Luci