VS2017 / VS 2019 작업 표시 줄에서 관리자 권한으로 실행


98

작업 표시 줄의 최근 목록에서 프로젝트를 선택할 때 Visual Studio 2017/2019를 관리자로 실행하고 싶습니다 . Explorer / Shell 단축키를 통해 프로젝트를 열 때.

나는 설정을 사용했다 : 속성-> 바로 가기-> 고급-> 관리자로 실행 확인란.

불행히도 이로 인해 devenv가 관리자로 실행되는 것은 아닙니다.

이 문제를 해결하는 방법에 대한 아이디어가 있습니까?

답변:


262
  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. 최근 목록에서 프로젝트 다시 열기

4
이것은 또한 버전 선택기가 도입 된 이후로 이전 버전의 모든 Visual Studio에 대해 동일한 솔루션입니다. 반대표를 던지는 사람은 개인적으로 만들거나 현상 유지를 거부하는 것입니다. 이 방법은 여전히 작동하는지 확인 감사는, 난 그냥 :) 시도하기 전에 확인 필요
숀 윌슨

6
U는 MS가 '항상 관리자 권한으로 실행'이라는 설정을 가질 것이라고 생각할 것입니다. 사소한 개발이 필요하지
않기

1
@ pm100이 설정을 가진 VSCommands VS Addin이 있습니다. 하지만 웹 개발의 특성과 VS 내의 IIS 지원이이를 기본 제공해야한다는 데 동의합니다. IIS가 솔루션에 사용되는 경우 관리자 권한이 필요합니다. VS는이를 자동으로 감지하고 요청을 다시 시작해야합니다.
Robert Koritnik 2017 년

참고로 : 이것은 VS가 시작할 때마다 관리자 권한으로 실행하도록 요청합니다.
Jeff B

1
나는 VS의 새 버전을 설치해야 할 때마다 이것을 우연히 발견했습니다 ... 이제 2019 년에도 동일한 솔루션이 여전히 작동합니다
moi_meme

16

Steve의 답변 단계의 효과는 단일 레지스트리 값을 추가하는 것입니다. 명령 줄을 통해 해당 레지스트리 값을 추가하기 만하면 이러한 모든 단계를 피할 수 있습니다. 어떤 이유로 효과가 적용되는 데 약간의 시간이 걸리지 만 로그 아웃 / 로그인하면 즉시 적용됩니다.

이상한 이유로, 필자의 경우 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"

이 방법이 유용 할 수 있지만이 앱을 다른 곳에 설치 한 사용자, 향후 버전의 VS 또는 동일한 방식으로 실행하려는 다른 응용 프로그램에 대해서는 작동하지 않습니다 (복사하여 붙여 넣기).
Anthony Nichols

1
글쎄요 제가이 글을 썼을 때 질문의 제목은 구체적으로 VS2017 만 언급했습니다.
Gabriel Luci

1
레지스트리 편집은 모든 사람을위한 것이 아닙니다. 매우 조심해야합니다. 그렇지 않으면 전체 OS가 충돌하게됩니다. 따라서 나는 당신이 가질 수있는 가장 안전한 해결책으로 Steve의 대답을 찬성하고 추천합니다! 다시 말하지만 그것은 제 의견입니다!
Vincy

@Vincy 물론입니다.하지만 Visual Studio를 사용하는 경우 Windows에 대해 한두 가지 알고 레지스트리를 직접 수정하는 것을 두려워하지 않을 가능성이 있습니다. 특정 레지스트리 키의 용도를 찾는 것은 어렵지 않습니다.
Gabriel Luci
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.