MenuIcon

Owl-Networks Archive

LoginIcon

원하는 확장자에 대해서 [관리자 권한으로 실행] 옵션을 쉘에 추가하기

| 분류: 컴퓨터 사용 경험 | 최초 작성: 2012-07-08 15:45:38 |

1. 문제의 소재

윈도우 비스타 이후의 윈도우에서는 "관리자 권한으로 실행" 옵션이 필요한 경우가 종종 있습니다. 사용자 계정 컨트롤(UAC) 덕이죠. 윈도우 XP 에 비해서는 좀 불편하지만, 보안상 많은 이점이 있는 것이니 사용자가 익숙해지는 것이 바람직할 겁니다.

각설하고, 일반적인 실행 파일들(*.exe 등)에 대해서는 마우스 오른쪽 버튼에 "관리자 권한으로 실행" 옵션을 출력할 수 있습니다. 그러나 그 이외의 확장자들에 대해서는 해당 옵션이 뜨지 않습니다. 그러나, 기본적인 실행 파일 이외의 확장자에 대해서도 "관리자 권한으로 실행" 옵션을 필요로 할 때가 있습니다.

예를 들면, 제 컴퓨터에는 Strawberry Perl 이 설치되어 있고, .pl 확장자가 Perl.exe 에 연결되어 있습니다. 따라서, 모든 .pl 파일을 더블클릭하면 자동으로 Perl 인터프리터가 실행되면서 Perl 스크립트가 실행될 겁니다. 그런데, 제가 작성한 스크립트의 실행에 관리자 권한이 필요하다면 어떨까요?

일반적인 경우, .pl 확장자를 가진 파일에 마우스 오른쪽 버튼을 클릭해 봐야, "관리자 권한으로 실행" 옵션은 보이지 않습니다. 그렇다면, 이 Perl 스크립트를 관리자 권한으로 실행하는 방법은, 콘솔 모드(cmd.exe)를 관리자 권한으로 호출해서, 콘솔상에서 해당 스크립트를 실행할 수밖에 없을 겁니다.

.pl 파일을 마우스 우클릭 해도, [관리자 권한으로 실행] 옵션은 보이지 않습니다.
.pl 파일을 마우스 우클릭 해도, [관리자 권한으로 실행] 옵션은 보이지 않습니다.

물론, 더 간단한 방법은 있습니다. Perl 실행 바이너리인 Perl.exe 자체에 기본으로 관리자 권한을 부여해 버리면 되죠. 그러면 모든 스크립트가 관리자 권한을 기본적으로 부여받은 상태에서 실행될 테니까요. 하지만 (감히 말하건대 절대로) 이 방법은 사용하시면 안 됩니다. 이유는.. 굳이 설명해야 하나요?

이런 경우, .pl 파일의 쉘 확장에 "관리자 권한으로 실행" 옵션을 넣을 수 있다면, 관리자 권한으로 콘솔 모드를 실행시켜서 콘솔 내에서 Perl 스크립트를 실행하는 귀찮은 짓을 하지 않아도 될 겁니다. 그리고, 역시나 그런 방법이 있더군요.

2. 설정 방법

방법은 다음과 같습니다. 약간의 레지스트리 수정이 필요합니다.

  1. 레지스트리 편집기를 실행합니다.
  2. HKEY_CLASSES_ROOT\.pl 항목을 찾습니다. (저는 여기서 .pl 확장자에 관리자 권한을 주려고 하는 것이니까요.)
  3. 해당 항목의 (기본 값) 항목에 뭐라고 되어 있는지 찾아봅니다. (제 경우는 Perl_program_file 이라고 되어 있네요.)

    HKEY_CLASSES_ROOT.pl 항목을 찾아간 결과. 기본값에 Perl_program_file 이라고 적혀 있습니다.
    HKEY_CLASSES_ROOT.pl 항목을 찾아간 결과. 기본값에 Perl_program_file 이라고 적혀 있습니다.
  4. HKEY_CLASSES_ROOT\Perl_program_file 을 찾아갑니다. (위에서 나온 이름을 찾아가면 됩니다.)
  5. HKEY_CLASSES_ROOT\Perl_program_file\shell 아래에 항목들이 있을 겁니다. 제 경우는 open 이지만, 다른 이름일 수도 있습니다. 대개는 아래 그림과 같은 구조일 겁니다.

    대개 실행의 경우 open 이하에 command 와 같은 구조입니다.
    대개 실행의 경우 open 이하에 command 와 같은 구조입니다.
  6. open 에 마우스 오른쪽 버튼을 클릭하고, [내보내기] 를 클릭합니다. 적당한 이름으로 저장합니다.

    open 키에 마우스 오른쪽 버튼을 클릭하면 이와 같이 [내보내기] 메뉴가 보입니다.
    open 키에 마우스 오른쪽 버튼을 클릭하면 이와 같이 [내보내기] 메뉴가 보입니다.
  7. 저장된 .reg 파일을 메모장 등 에디터로 엽니다.
  8. 레지스트리 키의 open 을 runas 로 바꾸고 저장합니다.

    그림과 같이, 저장했던 키 (여기선 open) 의 이름을 runas 로 변경한 후 저장합니다.
    그림과 같이, 저장했던 키 (여기선 open) 의 이름을 runas 로 변경한 후 저장합니다.
  9. 방금 전 수정한 .reg 파일을 더블클릭하여 실행, 레지스트리에 반영합니다.
  10. 이제 .pl 파일에 마우스 오른쪽 버튼을 클릭해 보시면 [관리자 권한으로 실행] 옵션이 추가되어 있는 것을 보실 수 있습니다.

    적용 후의 결과. .pl 파일의 쉘 확장에도 [관리자 권한으로 실행] 항목이 나타납니다.
    적용 후의 결과. .pl 파일의 쉘 확장에도 [관리자 권한으로 실행] 항목이 나타납니다.
참고 링크: http://www.howtogeek.com/howto/windows-vista/add-run-as-administrator-to-any-file-type-in-windows-vista/

☞ 태그: runas, Administrator, 관리자 권한,

☞ 트랙백 접수 모듈이 설치되지 않았습니다.

☞ 덧글이 2 개 있고, 트랙백이 없습니다.

덧글을 남기시려면 여기를 클릭하십시오.

□ Raymundo 님께서 2012-07-09 14:33:06 에 작성해주셨습니다.

오오 좋은 정보 감사합니다.

⇒ 부엉이 님께서 2012-07-10 09:54:01 에 답글을 작성하셨습니다.

감사합니다. ^^

□ rtsummit 님께서 2012-11-01 16:38:41 에 작성해주셨습니다.

좋은 정보 감사합니다.

⇒ 부엉이 님께서 2012-11-02 08:48:17 에 답글을 작성하셨습니다.

감사합니다 :-)

[483] < [446] [445] [443] [442] [441] ... [439] ... [438] [436] [435] [434] [432] > [19]

(C) 2000-2018, Owl-Networks. Powered by Perl. 이 페이지는 HTML 5 표준에 따라 작성되었습니다.