레지수정방법

CMD BAT 인스톨 2018. 11. 4. 18:50

reg query /?


REG QUERY KeyName [/v [ValueName] | /ve] [/s]

          [/f Data [/k] [/d] [/c] [/e]] [/t Type] [/z] [/se Separator]

          [/reg:32 | /reg:64]


  KeyName  [\\Machine\]FullKey

           Machine - 원격 컴퓨터 이름. 생략하면 기본값이

                     현재 컴퓨터가 됩니다. 원격 컴퓨터에서는 HKLM과 HKU를

                     사용할 수 있습니다.

           FullKey - ROOTKEY\SubKey 이름 형식

                ROOTKEY - [ HKLM | HKCU | HKCR | HKU | HKCC ]

                SubKey  - 선택한 ROOTKEY 아래에 있는

                          레지스트리 키의 전체 이름


  /v       특정 레지스트리 키 값을 쿼리합니다.

           생략되면 키의 모든 값을 쿼리합니다.


           이 스위치로의 인수는 /f 스위치와 함께 지정되면

           옵션일 수 있습니다. 이것은 값 이름만 찾기 위한 것입니다.


  /ve      기본값 또는 비어 있는 값 이름(기본값)을 쿼리합니다.


  /s       모든 하위 키와 값을 반복적으로 쿼리합니다(dir /s의 경우처럼)


  /se      REG_MULTI_SZ에 대한 데이터 문자열에서 구분 기호(1문자의 길이만)를

           지정합니다. 기본값으로 "\0"을 구분 기호로 지정합니다.


  /f       검색할 문자열을 지정합니다.

           문자열에 빈 칸이 들어 있으면 큰 따옴표로 묶습니다. 기본값은 "*"입니다.


  /k       키 이름만 검색합니다.


  /d       검색할 데이터를 지정합니다.


  /c       검색할 때 대/소문자를 구분합니다.

           기본적으로, 검색할 때 대/소문자를 구분하지 않습니다.


  /e       정확하게 일치하는 것만 반환합니다.

           기본적으로, 일치하는 것 모두를 반환합니다.


  /t       레지스트리 값 데이터 형식을 지정합니다.

           유효한 형식:

             REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ,

             REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE

           기본값은 모든 유형입니다.


  /z       세부 정보: 값 이름의 유형에 대응하는 숫자 값을 보여 줍니다.


  /reg:32  32비트 레지스트리 보기를 사용하여 키에 액세스해야 함을 지정합니다.


  /reg:64  64비트 레지스트리 보기를 사용하여 키에 액세스해야 함을 지정합니다.


예:


  REG QUERY HKLM\Software\Microsoft\ResKit /v Version

    레지스트리 값 Version의 값을 표시합니다.


  REG QUERY \\ABC\HKLM\Software\Microsoft\ResKit\Nt\Setup /s

    원격 컴퓨터 ABC의 레지스트리 키 Setup 아래의 모든 하위

    키와 값을 표시합니다.


  REG QUERY \\ABC\HKLM\Software\Microsoft\ResKit\Nt\Setup /se #

    값 이름 유형이 REG_MULTI_SZ인 모든 값 이름에 대한

    모든 하위 키 및 값을 "#" 구분 문자와 함께 표시합니다.


  REG QUERY HKLM /f SYSTEM /t REG_SZ /c /e

    키, 값, 데이터를 대/소문자를 구별하여 표시하고

    REG_SZ 데이터 형식에 대한

     HKLM 루트 아래의 "SYSTEM" 인스턴스만 표시합니다.


  REG QUERY HKCU /f 0F /d /t REG_BINARY

    REG_BINARY 데이터 형식에 대한 HKCU 루트 아래의 데이터에서 "0F" 인스턴스의

    키, 값, 데이터를 대/소문자를 구별하여 표시합니다.


  REG QUERY HKLM\SOFTWARE /ve

    HKLM\SOFTWARE 아래의 빈 값(기본값)에 대한

    키, 값, 데이터를 표시합니다.



C:\Users\kh>reg add /?


REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]

        [/reg:32 | /reg:64]


  KeyName  [\\Machine\]FullKey

           Machine  원격 컴퓨터 이름 - 생략하면 기본값이

                    현재 컴퓨터가 됩니다. 원격 컴퓨터에서는

                    HKLM과 HKU만 사용할 수 있습니다.

           FullKey  ROOTKEY\SubKey

           ROOTKEY  [ HKLM | HKCU | HKCR | HKU | HKCC ]

           SubKey   선택한 ROOTKEY 아래에 있는 레지스트리 키의 전체 이름


  /v       선택한 키 아래에 있는 추가할 값 이름


  /ve      키에 대해 비어 있는 값 이름(기본값)을 추가합니다.


  /t       RegKey 데이터 형식

           [ REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ |

             REG_DWORD | REG_QWORD    | REG_BINARY    | REG_NONE ]

           생략하면 REG_SZ인 것으로 간주합니다.


  /s       REG_MULTI_SZ에 대한 데이터 문자열에서 구분 기호로 사용할 문자를

           하나 지정합니다. 생략하면 "\0"이 구분 기호로 사용됩니다.


  /d       추가할 레지스트리 ValueName에 할당할 데이터입니다.


  /f       확인 절차 없이 기존 레지스트리 항목을 강제로 덮어씁니다.


  /reg:32  32비트 레지스트리 보기를 사용하여 키에 액세스해야 함을 지정합니다.


  /reg:64  64비트 레지스트리 보기를 사용하여 키에 액세스해야 함을 지정합니다.


예:


  REG ADD \\ABC\HKLM\Software\MyCo

    원격 컴퓨터 ABC에 HKLM\Software\MyCo 키를 추가합니다.


  REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead

    값(이름: Data, 형식: REG_BINARY, 데이터: fe340ead)을 추가합니다.


  REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail

    값(이름: MRU, 형식: REG_MULTI_SZ, 데이터: fax\0mail\0\0)을 추가합니다.


  REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%

    값(이름: Path, 형식: REG_EXPAND_SZ, 데이터: %systemroot%)을 추가합니다.

    참고: 확장 문자열 내에는 캐럿 기호(^)를 사용하십시오.





ref add "키 경로" /v "값 이름" /t "데이터형식(종류)" /d "데이터"  /f 강제적용(확인절차 없이 덥어씀)



reg add HKEY_CURRENT_USER\Software\Samsung\Kies2.0 /v loglevel /t REG_DWORD /d 0 /f

reg add HKEY_CURRENT_USER\Software\Samsung\Kies2.0 /v LeaveTempFile /t REG_SZ /d true /f

reg delete HKEY_CURRENT_USER\Software\Samsung\Kies2.0 /v WorkingFolder /f

reg add HKEY_CURRENT_USER\Software\Samsung\Kies2.0 /v SupportTestDevice /t REG_SZ /d True /f

reg delete HKEY_CURRENT_USER\Software\Samsung\Kies\DeviceDB /f

reg add HKEY_CURRENT_USER\Software\Samsung\Kies2.0 /v IsRunPDManager /t REG_DWORD /d 1 /f

reg add HKEY_CURRENT_USER\Software\Samsung\Kies3.0 /v loglevel /t REG_DWORD /d 0 /f



reg 파일을 bat로 바꿔주는 프로그램은 아직까지 없는듯 합니다. 2007년 8월 현재

regedit /s filename.reg 명령어로 reg 파일을 등록하는 방법이 아닌 온리 cmd 모드에서 작동하는 방법이며, cmd 모드에서 reg /? 실행을하면 도움말 파일이 나오긴 합니다만 영문이고 데이타입력에 관하여 자세하게 설명이 나와있지가 않습니다.

주로사용하는 기본명령어는 add 와 delete가 있으며, 그 외는 거의 사용하지 않습니다. 
reg add /? 
reg delete /?

reg add "키이름" /v 이름 /t 종류 /d 데이타 /f 
/v = 이름 
/t = value의 종류 REG_SZ, REG_MULTI_SZ, REG_DWORD_BIG_ENDIAN, REG_DWORD ,REG_BINARY, REG_DWORD_LITTLE_ENDIAN... 
/d = 데이타값 
/f = 실행된명령어의 입력확인(y/n?)

reg delete "키이름" /f 
/f = 실행된명령어의 입력확인(y/n?)

사용예제 :

reg add "HKEY_CURRENT_USER\test" /f 
HKEY_CURRENT_USER에 test 키 만들기

reg add "HKEY_CURRENT_USER\test" /v Block /t REG_DWORD /d 4427 /f 
HKEY_CURRENT_USER에 test 키에 REG_DWORD타입의 Block이름을만들고, 값이 10진수인 4427 입력, 16진수는 안들어가므로 10진수로 환산

reg add "HKEY_CURRENT_USER\test" /v Time /t REG_BINARY /d d707040004000c000a0037001100 /f 
HKEY_CURRENT_USER에 test 키에 REG_BINARY 타입의 time이름을만들고, 값이 d7,07,04,00,04,00,0c,00,0a,00,37,00,11,00 입력하기 
콤마(,) 를 지워야하며, 이데이타를 얻는법은 레지스트리에서 키를 export 시키면 2개씩끊어져서 나옵니다. 이부분의 콤마를 지워줘야합니다.

reg add "HKEY_CURRENT_USER\test" /v Block /t REG_SZ /d asdfasdf /f 
HKEY_CURRENT_USER에 test 키에 REG_SZ타입의 Block이름을만들고, 데이타값 asdfasdf 입력

reg delete "HKEY_CURRENT_USER\test" /f 
HKEY_CURRENT_USER 에서 test키 삭제 


예제코드입니다. 코드변환하는것도 좀 시간이 걸립니다. -,-

%SystemRoot%\system32\ 이부분은 없어도 되는 부분입니다.

%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore" /v Blocked /t REG_DWORD /d 4425 /f
%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore" /v Count /t REG_DWORD /d 22521 /f
%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore" /v Flags /t REG_DWORD /d 00000004 /f
%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore" /v Type /t REG_DWORD /d 00000001 /f
%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{D27CDB6E-AE6D-11CF-96B8-444553540000}\iexplore" /v Time /t REG_BINARY /d d707040004000c000a00360020009e02 /f
%SystemRoot%\system32\reg.exe delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Settings\{D27CDB6E-AE6D-11CF-96B8-444553540000}" /f



출처: http://jinmoda.tistory.com/60 [Windows]



cmd란게 명령 프롬프트라는거 아시죠? ㅎㅎ


도스명령어가 먹히는곳이에요 윈도우 - 실행 - cmd - 엔터 하시면 나오는거요


cmd창에서 명령을


reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main" /v "Start Page" /t REG_SZ /d "www.seryu.woobi.co.kr" /f


ㄴ 이런식으로 cmd창에서 입력하면 직접 레지스트리값 수정 가능합니다


bat파일로 만들어서 레지스트리 몇십개 적용시킬때 유용하게 쓸수있습니다.


예시로든건 IE의 시작페이지를 수정한건데요


reg add "키값" /v "이름" /t 종류 /d "데이터"


입니다


키값은 수정하고자하는 데이터가있는 주소고요..


이름은 데이터의 이름


종류는 데이터의 종류.. 즉 REG_SZ 이나 REG_DWORD 같은거요


데이터는 말그대로 데이터고요 ㅎㅎ


reg add /?


하면 도움말도 나오니까 편합니다


상대방에게 텔넷으로 들어가서 상대방컴 수정해줄수도 잇으니 


유용합니다



배치파일로 만든다 하면


메모장을 열어서


@echo off

reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main" /v "Start Page" /t REG_SZ /d "www.seryu.woobi.co.kr" /f


ㄴ 이걸 입력하고


다른이름으로 저장


파일명을 startpage.bat


으로 저장하고


저장한걸 실행하면


바로 적용 됩니다..



이상입니다 ^^*


@echo off

reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main" /v "FullScreen" /t REG_SZ /d "yes" /f



출처: http://jujine.tistory.com/entry/regedit-수정-레지스트-bat-배치파일 [없던곳]




 
꼭 batch file로 해야하는 전제에 아래의 Registry Key도 쓸만 하실 꺼예요;;; @echo off setlocal set key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" set value="Domain" for /f "tokens=3 delims= " %%a in ('reg query %key% /v %value%') do ( set type=%%a ) echo %type%


http://blog.pages.kr/754