레지스트리

레지스트리 편집 하기 1탄

sungtg 2008. 3. 10. 17:57

레지스트리의 편집을 잘 하려면 어느쪽에 어떤 정보가 들어가 있는지 개념을 잡는것이 좋겠네요
일반 사용자가 레지스트리에서 주로 편집하는 부분은 제한 되어 있다고 봅니다.

사용자 삽입 이미지

HKEY_LOCAL_MACHINE 이 키는 레지스트리의 핵심입니다.
나머지 HKEY_CURRENT_USER, HKEY_CLASSES_ROOT 등은 
HKEY_LOCAL_MACHINE 의 백업키 역할을 합니다.

하위 키중에서  사용자가 주로 편집할 키는 HKEY_LOCAL_MACHINE\SOFTWARE 부분입니다.
설치되는 프로그램들이 설치 되면서 여기에 프로그램에 대한 정보를 저장을 하게 됩니다.

사용자 삽입 이미지

HKEY_LOCAL_MACHINE\SOFTWARE 에서 크게 나누면
하위에 '나우콤' 이라든지 'Ahnlab'이라든지 하는 프로그램들 이름이 보이는 부분이 있고

사용자 삽입 이미지

위 그림에서 보듯이 Microsoft 키 하위에 설정들이 보이는 키로 나눌 수 있습니다.
이 하위키에는 윈도우의 설정, 제어판, 서비스, 로그온, 자동실행, dll파일 클래스, 등
가장 핵심적인 내용이 들어 있습니다.


HKEY_LOCAL_MACHINE\SOFTWARE 키에서는 주로 프로그램의 수동 삭제를 할 수 있습니다.
간혹 탐색기를 이용해서 설치된 프로그램들의 파일만 삭제를 했을 경우
uninstall이 잘 안될 겁니다.
이럴때는 수동으로 일일이 레지스트리에서 해당 파일에 대한 정보를 삭제를 해야 하는 경우가
발생하는데 이때 많이 사용하는 키가 HKEY_LOCAL_MACHINE\SOFTWARE 키 하위에 키들을
삭제를 해야 합니다.

그럼 어떻게 찾아서 삭제를 할 까요..

대부분은 프로그램들이 설치되면서
레지스트리에 키를 만들때,, 프로그램이름, 프로그램제작회사 이름을 사용해서 키를 만듭니다.
그러므로 프로그램이름이나 , 회사이름으로 검색을 해서 레지스트리 키를 삭제를 하면 됩니다.
사용자 삽입 이미지
사용자 삽입 이미지

이런 식으로
HKEY_LOCAL_MACHINE\SOFTWARE 키에 커저를 놓고 검색해서 삭제하면 됩니다
.

주의 할 것은..
HKEY_LOCAL_MACHINE\SOFTWARE\Classes 이 하위키에 있는 것은 될 수 있으면 삭제를 하지
않는 것이 좋겠네요..
윈도우의 프로그램을 이해하는 분들만 핸드링 하는것이 좋겠습니다.

윈도우의 핵심인 COM 이라고 연결프로그램, 개체삽입, 원격지원등
가장 윈도우 답게 만드는 핵심 내용이 저장되어 있는 부분입니다.
물론 확장자 연결 사항도 들어가 있습니다.

사용자 삽입 이미지

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID
이 부분은 왠만하면 건드리면 안됩니다.
DLL 오류가 나오는 부분들이 바로 여기 부분입니다.
DLL 파일들이 클래스화 되어 있는 부분이고..
각 프로세스에서 DLL 파일명을 부르는 것이 아니고
이 레지스트리에 저장된 클래스를 호출하면 해당되는 DLL 파일이 실행이 되는 부분입니다.

한편으로는 수동으로 프로그램을 삭제하고 재설치하는데 있어서
"DLL 클래스를 등록하지 못했습니다" 에러 사인이 나오는 부분이 바로 여기 키입니다.

사용자 삽입 이미지

결론적으로
레지스트리가 윈도우95부터 사용되고 있고 비스타에서도 마찬가지로 사용됩니다.
레지스트리를 조작하면 만병통치약 처럼 생각하는 사람들도 많은데..
초창기 때나 그랬지 요즘은 좀더 복잡 해졌습니다.

레지스트리를 조작해서 정품처럼 보인다든지, 프로그램을 속일 수는 있습니다.
그러나 소프트웨어의 기능은 레지스트리 가지고 되는 것이 아닙니다.

궁금한 것 있으면 댓글로 질문해주세요
더 생각나면 시리즈로 올릴  께요