보통 설치 프로그램에서 권한을 주게끔 만드는 방법이 있는것 같지만,
찾다가 지쳐서 다른 방법으로 관리자 권한으로 실행 되도록 하는 방법을 소개 합니다.
먼저 비쥬얼 스튜디오는 툴 자체를 관리자 권한으로 실행 해주세요.
1. 솔루션 탐색기에서 개발중이던 프로젝트 명에 마우스 우클릭 -> 속성
2. 보안 탭 클릭 -> ClickOnce 클릭(체크가 되도록) 합니다.
3. 다시 ClickOnce 클릭(체크가 안되도록)
: -ㅅ-;;;;; 훈련 시키는건 아니구요.. 체크가 되도록 하면 프로젝트내에
Properties - app.manifest 파일이 생기게 됩니다.
ClickOnce 는 꽤 괜찮은 방법으로 배포하는 기능인데 나중에 조금더 공부해서 사용하도록 하고.. ㅋ
4. 이제 app.manifest 파일을 엽니다.
5. 아래와 같이 설명을 잘해서 이미 추가 되어 있습니다.
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC 매니페스트 옵션
Windows 사용자 계정 컨트롤 수준을 변경하려면
requestedExecutionLevel 노드를 다음 중 하나로 바꾸십시오.
<requestedExecutionLevel level="asInvoker" uiAccess="false" /> //기본
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
requestedExecutionLevel 노드를 지정하면 파일 및 레지스트리 가상화가 사용되지 않습니다.
이전 버전과의 호환성을 위해 파일 및 레지스트리 가상화를 사용하려면
requestedExecutionLevel 노드를 삭제하십시오.
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
6. 위의 asInvoker 부분을 requireAdministrator 으로 바꿉니다.
7. 컴파일 -> 완성!!!!!!!!!!!!!
관리자 권한인지 확인 하는 방법은 요겁니다.
using System.Security.Principal;
public static bool IsAdministrator()
{
WindowsIdentity identity = WindowsIdentity.GetCurrent();
if (null != identity)
{
WindowsPrincipal principal = new WindowsPrincipal(identity);
return principal.IsInRole(WindowsBuiltInRole.Administrator);
}
return false;
}
개인적인 메모 겸 글을 올립니다.
Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다
당신의 의견을 작성해 주세요.