Maystyle :
Admin : New post
Guestbook
Local
media
Catergories
Recent Articles
Recent Comments
Recent Trackbacks
Calendar
Tag
Archive
Link
Search
 
해당되는 게시물 4건
  Script를 이용한 레지스트리 키, 값 컨트롤 
작성일시 : 2008.03.06 12:01 | 분류 : Windows Server/Kernel | 태그 : Delete, Registry, VBS

목차
1. 레지스트리의 사용
2. 레지스트리 루트기
3 예제 : 마우스 오른쪽 버튼 화면 컨트롤
4 예제 : Script를 이용한 레지스트리 키, 값 컨트롤

레지스트리 루트키 정의
Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_USERS = &H80000003
Const HKEY_CURRENT_CONFIG = &H80000005

[스크립트]
이전 포스트 "마우스 오른쪽 버튼 화면 컨트롤" 의 파일에 대한 메뉴 삭제를 스크립트화 시키면 아래와 같다.
하위 subkey까지 모두 삭제 시켜준다.

Const HKEY_CLASSES_ROOT = &H80000000

strComputer = "."
strKeyPath = "*\shellex\ContextMenuHandlers\ALzip"

Set objRegistry = GetObject("winmgmts:\\" & _
    strComputer & "\root\default:StdRegProv")

DeleteSubkeys HKEY_CLASSES_ROOT, strKeypath

Sub DeleteSubkeys(HKEY_CLASSES_ROOT, strKeyPath)
    objRegistry.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubkeys

    If IsArray(arrSubkeys) Then
        For Each strSubkey In arrSubkeys
            DeleteSubkeys HKEY_CLASSES_ROOT, strKeyPath & "\" & strSubkey
        Next
    End If

    objRegistry.DeleteKey HKEY_CLASSES_ROOT, strKeyPath
End Sub

[결과]
ALZip 관련 메뉴가 삭제 된 것을 알 수 있다.

[관련 문서]
http://support.microsoft.com/kb/310516
http://articles.techrepublic.com.com/5100-6268_11-5194791.html
http://technet.microsoft.com/ko-kr/magazine/cc160952(en-us).aspx
http://www.serverwatch.com/tutorials/article.php/1476831

  마우스 오른쪽 버튼 화면 컨트롤 
작성일시 : 2008.03.06 10:57 | 분류 : Windows Server/Kernel | 태그 : Alzip, Delete, mouse right button, Registry, 마우스 오른쪽 버튼, 삭제, 응용

목차
1. 레지스트리의 사용
2. 레지스트리 루트기
3 예제 : 마우스 오른쪽 버튼 화면 컨트롤

오늘은 이전의 레지스트리에 대한 설명과 함께 좀더 재미있게 컨트롤 하고자 직접 레지스트리를 수정하고 수정된 결과를 확인하도록 하겠습니다.

[목표]
아래 그림의 ALZip 과 관련된 메뉴를 삭제한다.

[관련 Registry]
해당 설정과 관련된 Registry는 아래와 같다
HKCU\SOFTWARE\Class 및 HKLM\SOFTWARE\Class의 데이터들은 HKCR 에서 확인 할 수 있다
즉 해당 레지스트리를 수정하면 원하는 목표를 이룰 수 있다
(참 다행입니다... 소프트웨어 및 파일에 대한 설정을 한곳에서 할 수 있어서요...^^)

File에 대한 설정
[HKCR\<ProgID>\shellex\ContextMenuHandlers\]
[HKCR \*\shellex\ContextMenuHandlers\]
[HKCR\*\shell\]
[HKCR\AllFilesystemObjects\shellex\ContextMenuHandlers\]

Directory에 대한 설정
[HKCR\Folder\Shell\]
[HKCR\Folder\ShellEx\ContextMenuHandlers\]
[HKCR\Directory\Shell\]
[HKCR\Directory\ShellEx\ContextMenuHandlers\]
[HKCR\AllFilesystemObjects\shell\]
[HKCR \ AllFilesystemObjects \ shellex \ ContextMenuHandlers\]

[Action ITEM]

먼저 파일에 대한 ALZip 압축을 막기 위하여 HKCR \*\shellex\ContextMenuHandlers\ 를 확인한다.
 

ALZIP 을 삭제한다.
이제 파일에 대한 ALZIP 관련 메뉴가 사라졌다
 

하지만 여전히 폴더에서는 ALZIP 관련 메뉴가 보이고 있다.
 

이제 폴더에서도 않보이도록 삭제 하도록 하겠다.
HKCR\Directory\ShellEx\ContextMenuHandlers\ 의 ALZIP 을 삭제한다.
 

역시 HKCR\Folder\ShellEx\ContextMenuHandlers\ 의 ALZIP 도 삭제한다.

완전히 삭제 된 것을 볼 수 있다.

다음에는 이렇게 레지스트를 직접 수정하는 것이 아니라 스크립트를 통하여 컨트롤 하는 것을 해보도록 하겠다.

[관련 문서]
http://windowsxp.mvps.org/context_folders.htm

  레지스트리 루트키 
작성일시 : 2008.03.04 10:36 | 분류 : Windows Server/Kernel | 태그 : HKEY_CLASSES_ROOT, HKEY_CURRENT_CONFIG, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_PERFORMANCE_DATA, HKEY_USERS, regedit, Registry, root key, Windows, 레지스트리, 루트키

다음 섹션에서 좀 더 세부적으로 해당 레지스트리 키의 하위 키들을 살펴 보도록 하겠습니다.
출처 : windows internals
목차
1. 레지스트리의 사용
2. 레지스트리 루트기

레지스트리 내에 저장된 데이터는 크게 6개의 루트기를 기준으로 하여 저장된다.

HKEY_CURRENT_USER 
현재 로그인된 사용자의 프로필에 대한 정보를 담고 있으며, 실제 \Documents and settings\<username>\Ntuser.dat 파일이다.

HKEY_USERS
해당 머신의 모든 계정 정보를 담고 있다.

HKEY_CLASSES_ROOT
파일 확장자들과 COM 클래스에 대한 정보로 구성되며, 모든 등록된 파일 이름의 확장자가 키로 존재하게 된다.
이 키는 실제 HKCU\SOFTWARE\Class 및 HKLM\SOFTWARE\Class의 데이터들이다.

HKEY_LOCAL_MACHINE
H/W, SAM, Securitu, Software, System에 대한 모든 구성정보를 저장한다.

HKEY_CURRENT_CONFIG
현재 H/W에 대한 프로필로써 HKLM\SYSTEM\CurrentControlSet\Hardware Profiles\Current 에 저장된 데이터이다.

HKEY_PERFORMANCE_DATA
해당키는 regedit에서는 확인 할 수 없다. 실제로 이 키를 사용하기 위해서는 RegQueryValueEx 와 같은 Windows 레지스트리 함수를 이용해야 한다. 이 레지스트리 키는 Windows의 성능을 모니터링 하기위한 데이터를 저장하고 있다.

  레지스트리의 사용 
작성일시 : 2008.03.04 10:19 | 분류 : Windows Server/Kernel | 태그 : regedit, Registry, Windows

출처 : windows internals
목차
1. 레지스트리의 사용

레지스트리는 Windows의 구성정보를 보여주는 창이라고 봐도 되겠다.
레지스트리가 모두 자신의 이름 앞에 H를 넣어 주는 것도 실제 Handle을 나타내기 때문이다.
시작하기에 앞서 장난 한번 쳐보도록 하자.

.

위 그림의 ProcessorNameString 을 수정하여, 자신의 CPU를 아주 고사양인 것처럼 속일 수 있다.
이와 같이 Registry는 시스템의 구성내용을 보여주기도 하고, 또한 메모리등의 구성을 관리하기도 한다.
메모리에 대한 구성 관리는 이전 포스트에서 다룬봐 있다. (http://maystyle.tistory.com/286)

Registry의 사용
Registry는 부팅, 로그인, 시동 이 세번에 걸처 각각 시스템, 유저, 어플리케이션이 로딩하게 된다.
- 부트 프로세스 동안 시스템이 장치 드라이버 및 메로리 관리자, 프로세스 관리자와 같은 자신의 시스템에 대한 구성 및 동작에 대한 설정을 읽어 올때
- 로그인 하는 동안 네트워크 드라이버 문자 맵핑, 데스크톱 배경화면, 스크린세이버 등에 대한 사용자 설정을 읽어 올때
- 시동하는 동안 각 응용 프로그램은 자신의 최근의 설정등을 읽어 올때

Registry의 수정
- Windows 셋업 시 미디어에 일부에서 프로토 타입이 배포될 때
- 용용프로그램들 자신이 설치 되거나 자신의 구성이 변경될 때
- 장치 드라이버가 설치될 때
- 사용자가 직접 변경할때

 Prev   1   Next