WorkaHolic

레지스트리의 키값을 읽어올때..

2010. 4. 8. 22:17
반응형

SQL 서버를 이용해서 레지스트리에 접근하는 방법입니다.


=======================================================================

SQL 서버에서 레지스트리 값등을 관리할 수 있는 팁입니다.
기본으로 내장되어 있는 스토어드 프로시져를 이용합니다.

주의 : 테스트 하실때 주의 하세요...


레지스트리 값 읽기 :

EXECUTE xp_regread [@rootkey=]"rootkey",
                   [@key=]"key"
                   [, [@value_name=]"value_name"]
                   [, [@value=]@value OUTPUT]

예 : 만일 "HKEY_LOCAL_MACHINE"의 "SOFTWARE\Test" 키에서 "TestValue" 값을
@test
변수로 읽어들이려면 다음과 같이 하면 된다:

DECLARE @test varchar(20)
EXEC master..xp_regread @rootkey="HKEY_LOCAL_MACHINE",
  @key="SOFTWARE\Test",
  @value_name="TestValue",
  @value=@test OUTPUT
SELECT @test


레지스트리 생성하기 :

EXECUTE xp_regwrite [@rootkey=]"rootkey",
                    [@key=]"key",
                    [@value_name=]"value_name",
                    [@type=]"type",
                    [@value=]"value"

예 : 만일 "HKEY_LOCAL_MACHINE"의 "SOFTWARE\Test" 키에 있는 "TestValue" 값
에 "Test"라고 기록하고 싶다면 다음과 같이 하면 된다:

EXEC master..xp_regwrite
     @rootkey="HKEY_LOCAL_MACHINE",
     @key="SOFTWARE\Test",
     @value_name="TestValue",
     @type="REG_SZ",
     @value="Test"


레지스트리 키 삭제하기 :

EXECUTE xp_regdeletekey [@rootkey=]"rootkey",
                        [@key=]"key"

예 : 만일 "HKEY_LOCAL_MACHINE"의 "SOFTWARE\Test" 키를 삭제하려면 다음과 같이

면 된다:

EXEC master..xp_regdeletekey
     @rootkey="HKEY_LOCAL_MACHINE",
     @key="SOFTWARE\Test"


레지스트리 키의 특정 값 삭제하기 :

EXECUTE xp_regdeletevalue [@rootkey=]"rootkey",
                          [@key=]"key",
                          [@value_name=]"value_name"

예 : 만일 "HKEY_LOCAL_MACHINE"의 "SOFTWARE\Test" 키에서 "TestValue" 값을
삭제하
려면 다음과 같이 하면 된다:

EXEC master..xp_regdeletevalue
     @rootkey="HKEY_LOCAL_MACHINE",
     @key="SOFTWARE\Test",
     @value_name="TestValue"

그럼 도움이 되셨길....

 

반응형