본문 바로가기
IT Study/VB.net

[VB.net] 레지스트리 생성, 수정, 읽기

by dev_huhu 2020. 2. 22.
반응형

* 레지스트리란?

윈도우 레지스트리(Windows Registry)는 마이크로소프트 윈도우 32/64비트 버전과 윈도우 모바일 운영 체제의 설정과 선택 항목을 담고 있는 데이터베이스로, 모든 하드웨어, 운영 체제 소프트웨어, 대부분의 비운영 체제 소프트웨어, 사용자 PC 선호도 등에 대한 정보와 설정이 들어 있다. 사용자가 제어판 설정, 파일 연결, 시스템 정책, 또는 설치된 소프트웨어를 변경하면, 이에 따른 변경 사항들이 레지스트리에 반영되어 저장된다.

출처: https://ko.wikipedia.org/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_%EB%A0%88%EC%A7%80%EC%8A%A4%ED%8A%B8%EB%A6%AC


 

<완성된 프로그램 Form1>

 

 

 

<코드>

Public Class Form1

    Dim Path As String = "HKEY_CURRENT_USER\"

    ' 레지스트리 생성 버튼
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        '서브키 폴더 생성
        My.Computer.Registry.CurrentUser.CreateSubKey(TextBox1.Text)

        '서브키 폴더 안에 이름과 값 만들기
        'TextBox1 => 서브키 폴더
        'TextBox2 => 이름
        'TextBox3 => 값
        My.Computer.Registry.SetValue(Path & TextBox1.Text, TextBox2.Text, TextBox3.Text)

    End Sub

    ' 레지스트리 읽기 버튼
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        '경로에서 값 읽어오기
        TextBox4.Text = My.Computer.Registry.GetValue(Path & TextBox1.Text, TextBox2.Text, Nothing)
    End Sub
End Class

 

<동작되는 모습>

1. 레지스트리 편집기 실행 (검색창에 regedit 이라고 검색)

 

 

 

2. 레지스트리 편집기 실행 화면

 

 

 

HKEY_CLASSES_ROOT (HKCR): 파일 연결, OLE 객체 클래스 ID와 같은 등록된 응용 프로그램의 정보를 담고 있다. 윈도우 2000 이후로, HKCR은 HKCU\Software\Classes와 HKLM\Software\Classes를 편집한다. 주어진 값이 위의 서브키의 두 곳에 존재하면, HKCU\Software\Classes의 항목을 사용한다.

HKEY_CURRENT_USER (HKCU): 현재 로그인한 사용자의 설정을 담고 있다.

HKEY_LOCAL_MACHINE (HKLM): 컴퓨터의 모든 사용자의 설정을 담고 있다.

HKEY_USERS (HKU): 컴퓨터에서 사용 중인 각 사용자 프로파일에 대한 HKEY_CURRENT_USER 키에 일치하는 서브키를 담고 있다.

HKEY_CURRENT_CONFIG: 실행 시간에 수집한 자료를 담고 있다. 이 키에 저장된 정보는 디스크에 영구적으로 저장되지 않고 시동 시간에 생성된다.

HKEY_PERFORMANCE_DATA: 런타임 성능 데이터 정보를 제공한다. 이 키는 레지스트리 편집기에 보이지 않지만 윈도우 API의 레지스트리 명령어를 통해 볼 수 있다.HKEY_DYN_DATA: 이 키는 윈도우 95, 윈도우 98, 윈도우 Me에만 쓰인다. 플러그 앤 플레이를 비롯한 하드웨어 장치, 네트워크 성능 통계에 대한 정보를 포함한다. 이 하이브의 정보는 하드 드라이브에 저장되지 않는다. 플러그 앤 플레이 정보는 컴퓨터가 시작할 때 구성되며 메모리에 저장된다

출처: https://ko.wikipedia.org/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_%EB%A0%88%EC%A7%80%EC%8A%A4%ED%8A%B8%EB%A6%AC

 

3. 레지스트리 생성

 

원하는 텍스트 입력 후 생성 버튼 클릭(Button1)

 

 

 

프로그램에 입력한 위치에 서브키와 레지스트리가 생성된 것을 확인 가능하다.

 

 

4. 레지스트리 읽기

 

서브키와 레지스트리 이름을 입력한 후 읽기 버튼 클릭(Button2)

 

 

 

내가 작성한 레지스트리 파일을 읽어오는 것을 확인 가능하다.

 

 

반응형

댓글