Visual Studio를 사용하여 디버그에서 관리자로 응용 프로그램을 실행하는 방법은 무엇입니까?


90

C 드라이브의 루트에 대한 읽기 / 쓰기 액세스 권한이 있어야하는 AC # 응용 프로그램이 있습니다. 코드를 컴파일하고 관리자 권한으로 실행 파일을 실행할 수 있으며 작동합니다. 하지만 디버그해야하고 Visual Studio 내에서 앱을 시작하는 방법이 확실하지 않습니다.

나는 추가를 시도했다 :

<requestedExecutionLevel level="asInvoker" uiAccess="true" />

내 매니페스트에 액세스하지만 여전히 액세스 거부 오류가 발생합니다.

다음은 실패한 코드 줄입니다.

MemoryMappedFile mmf = MemoryMappedFile.CreateFromFile(@"c:\somemapnamefile.data", System.IO.FileMode.OpenOrCreate, "somemapname", 1000);

지금은 해결 방법이 있지만 미래에 대해 알고 싶습니다.


3
VS를 관리자로 실행하면 디버깅중인 모든 항목이 관리자로 실행됩니다.
— JMK

고정 된 솔루션을 실행하는 데 문제가있는 경우 다음 수정을 권장합니다
— JonnyRaa

필자의 경우 호환성으로 이동하여 Windows XP (서비스 팩 3)에서 실행을 선택해야했습니다. IDE를 관리자로 실행해도 도움이되지 않았습니다.
— Wendy

답변:


127

Visual Studio 자체를 관리자로 실행하기 만하면됩니다. 여기에서 디버깅하는 모든 프로그램은 관리자로 실행됩니다.


13
더 나은 방법은 속성 페이지에서 관리자
— 권한

20
@PanagiotisKanavos 나는 그렇게 할 특별한 이유가없는 한 관리자로 일을 실행 방지하기 위해 개인적으로 좋아
— 샘 I 오전을 복원 모니카 말한다

1
예. 관리자가 필요한 몇 가지 프로그램이 있습니다. 그리고 일단 실행하면 VS는 관리자 모드에서 VS를 다시 시작하도록 요청합니다. 어떻게 된 일인지 잘 모르겠습니다. 그냥 level = "requireAdministrator"로 설정했습니다. 그러나 때로는 자동으로 다시 시작되지 않습니다
— Jayson Ragasa 2015-06-15

@SamIam : 웹앱 배포 후 어떤 설정이 필요한가요 ...?
— Ghanshyam Lakhani

1
받아 들여졌음에도 불구하고 이것은 올바른 해결책 이 아닙니다 . 필요하지 않으면 프로그램을 실행하지 않으며 VS도 아니고 관리자로도 실행하지 않습니다. 원래 질문은 VS가 아니라 OP가 작성하는 프로그램에 관한 것이 었습니다. 정답은 개발중인 프로그램에 관리자 권한이 필요함을 지정하는 것입니다.
— Gábor

65

VS는 관리자 권한으로 실행해야합니다. 그러나 더 우아한 방법은 manifest의 requiredExecutionLevel에서 'requireAdministrator'로 설정해야합니다.

<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />

프로젝트를 열고 디버깅을 시도하면 VS2012가 관리자 권한에 대해 경고하고 관리자 권한으로 다시 시작됩니다. 또한 exe 파일은 처음에 관리자 권한이 필요한 것으로 표시되므로 배포 할 때 파일 속성에서 관리자 권한 요구 사항을 구성 할 필요가 없습니다.


1
또한 프로젝트의 보안 탭에서 "ClickOnce 사용 ..."이 선택 취소되어 있는지 확인하십시오. 그렇지 않으면 관리자가 요구하는 코드를 실행하려고 할 때 보안 경고가 표시됩니다. (앱에서 이미 '게시'를 클릭 한 경우 해당 설정이 확인됩니다.)
— monty

1
참고-매니페스트가 없으면 간단히 추가하십시오. 어쨋든 나는 그것이 존재하지 않을 수도 있다는 것을 깨닫지 못했습니다.
— Mołot 19

12

이 관리자 옵션을 자동으로 설정할 수도 있습니다.

여기에 이미지 설명 입력


1
상황에 맞는 메뉴에서 "속성"항목을 강조 표시하려는 것 같지만 모두가 당신이 말하는 내용을 알고 있습니다.
— Aaron Campbell

더 쉬운 방법은 Compatibility > Run As Administrator.
— AStopher

1
이것은 매우 나쁜 생각입니다. Visual Studio가 관리자로 지속적으로 실행되는 것을 원하지 않습니다.
— Jammer

1
이 스크린 샷은 완전히 이해할 수 없으며 좋은 솔루션인지 여부에 관계없이 설명이 수반되지 않습니다.
— MickeyfAgain_BeforeExitOfSO

7

제목의 질문에 답하려면 VS를 시작할 때 컨텍스트 메뉴에서 관리자 권한으로 실행을 선택하면됩니다.


4

이제 확인 된 답변이 작동하지 않습니다.

프로젝트 속성 링커 -> 매니페스트 파일 -> UAC 실행 수준 에서 이에 대한 옵션을 찾아야합니다 . requireAdminstrator로 설정하십시오 .

이렇게하면 생성 된 기본 매니페스트에 필요한 requestedExecutionlevel 이 포함되어 사용자가 아직 권한이 상승하지 않은 경우 자동으로 권한을 상승하라는 메시지가 표시됩니다.


1

"이 작업은 관리자 권한을 가지고 응용 프로그램이 필요합니다" 오류가 비주얼 스튜디오를 열 수있는 충분한 권한을 가지고 있지 않았기 때문에 현재 사용자로 인해 발생합니다.

임시 해결책으로

Visual Studio를 마우스 오른쪽 버튼으로 클릭하고 열 때마다 관리자 권한으로 실행을 선택하여이 문제를 해결할 수 있습니다.

영구적 인 솔루션으로 ,

호환성 문제 해결을 확인할 수 있습니다.

  • 오른쪽, Visual Studio를 클릭하고 호환성 문제 해결을 선택합니다.
  • 프로그램 문제 해결을 선택합니다.
  • 프로그램에 추가 권한이 필요함을 선택하십시오.
  • 프로그램 테스트를 클릭합니다.
  • 프로그램이 시작될 때까지 잠시 기다리십시오. 다음을 클릭하십시오.
  • 예,이 프로그램에 대해이 설정을 저장합니다를 선택합니다.

이미지가 포함 된 세부 단계는 Visual Studio에 애플리케이션에 상승 된 권한이 필요함을 확인하세요.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.