The others

UAC (사용자 계정 컨트롤) - 관리자 권한으로 실행되는 프로그램 만들기.

Ohjeonghak 2013. 7. 24. 00:05
반응형

windows xp에서 vista로 넘어가면서 vista이상 버전의 windows 사용자들은 프로그램 실행 시에 "관리자 권한"으로 프로그램을 실행 하지 않으면 프로그램이 제대로 작동 하지 않거나 마우스 오른쪽 키를 눌러 "관리자 권한으로 실행(A)" 을 선택하면 관리자 권한으로 실행하겠냐는 팝업창을 접할 수 있게 되었다. 즉, 사용자 계정 컨트롤[UAC(User Account Control)] 개념이 생긴 것이다.



  실행 할때마다 마우스 오른쪽 키를 누르고 관리자 권한으로 실행하고 게다가 관리자 권한으로 실행 하겠냐는 팝업창을 접한다면 사용자는 얼마나 불편함을 느끼겠는가?

 이에 따라 관리자 권한이 없으면 안되는 프로그램들은 난감한 상황에 빠졌다. 그래서 프로그래머들은 프로그램을 관리자 권한으로만 실행 할 수 있도록 만들어야 하는 상황이 되었다.


  지금부터 관리자 권한으로 실행되는 프로그램을 만들 수 있는 법을 소개 하도록 하겠다.

프로그램을 더블 클릭하여 실행하면 사용자 계정 컨트롤[UAC(User Account Control)]이 바로 관리자 권한으로 실행 되도록 하는 방법은 아주 간단 하다!

  프로그램이 관리자 권한으로 실행되게 하기 위해서는 'app.manifest'파일이 필요하다.



Step 1. 프로젝트 생성 후 솔루션 탐색기에서 마우스 오른쪽 키를 클릭 한 후 속성을 클릭한다.



Step 2. 링커에서 매니페스트 파일 항목에서 UAV 실행 수준이 asInvoker (/level='asInvoker') 로 되어 있을꺼다.

           이걸 바꿔주면 된다.



Step 3. asInvoker (/level='asInvoker')를 requireAdministrator (/level='requireAdministrator')로 바꿔서 적용해 준다.



Step 4. 소스를 작성하고 컴파일을 해주게 되면 프로젝트 디버그 디렉토리에 다음 그림과 같이 실행파일에 방패 모양을 

           볼 수 있을것이다. 방패 모양이 있는 실행파일은 실행 시 관리자 권한으로 실행 되는 실행파일이다.



반응형