本文以Windows XP為例(其他Windows版本可參考操作)介紹使用Windows記事本程序查找修改注冊表數據以及使用簡單的批處理腳本備份注冊表的方法
兩個重要的分支
用戶個人數據[HKEY_CURRENT_USER]
該分支中存放的是當前登錄用戶的個人喜好設置所用的軟件的設置等個人數據無論來賓受限用戶高級用戶還是管理員都可以修改屬於自己個人的注冊表數據用戶個人的注冊表數據就是注冊表編輯器左側窗格[HKEY_CURRENT_USER]所包含的項子項和值項
系統的核心數據[HKEY_LOCAL_MACHINE]
只有管理員權限的用戶可以訪問系統注冊表數據其中存放了系統中各項重要的核心設置數據系統的注冊表數據就是注冊表編輯器左側窗格顯示的[HKEY_LOCAL_MACHINE]所包含的項子項和值項
與備份注冊表過招
任務:備份注冊表分支並編輯部分設置
第一步:點擊開始→運行(或命令行提示符)輸入以下命令導出兩個注冊表分支(驅動器路徑及文件可自定義)導出後的myregreg大小約為MB~MB而sysregreg大小約為MB~MB視個人情況略有不同
reg export hkcu c:\myregreg
reg export hklm c:\sysregreg
第二步:分別右擊myregreg和sysregreg選擇編輯或發送到→記事本(創建右鍵菜單發送到→記事本可將開始菜單中的記事本快捷方式復制到C:\Documents and Settings\username\SendTo文件夾)用記事本程序打開myregreg文件
第三步:點擊菜單命令編輯→查找輸入要查找內容的關鍵字單擊查找下一個查找到一個數據可執行刪除修改操作然後按F鍵可繼續查找下一個數據查找修改所有數據選擇菜單文件→保存保存注冊表文件
任務:恢復用戶設置
()圖形界面恢復方式:在發生問題需要恢復時右擊myregreg選擇合並即可
()命令行模式恢復方式:在命令行模式下輸入reg import c:\myregreg(不包括外引號)命令就能將其導入注冊表
任務:自制Net Transport的線程補丁
第一步:點擊開始→運行輸入Regeditexe(不含引號)回車打開注冊表編輯器轉至[HKEY_CURRENT_USER\Software\Xi\NetTransport \Download]
第二步:在右側的編輯框裡新建一個DWORD值命名為Max Threads雙擊這個值在數值中輸入在基數中選擇十六進制
第三步:選擇菜單文件→導出保存類型設為Winx/NT注冊文件(在Windows /XP中使用默認的保存類型導出的注冊表文件無法在Windows x下導入)保存為threadsreg(見圖)
第四步:復制一份threadsreg並將新文件命名為uninstallreg用記事本打開該文件將[HKEY_CURRENT_USER\Software\Xi\NetTransport \Download]子項下的Max Threads=dword:修改為Max Threads=(不包括外側中文引號)在注冊表文件中將鍵值設為即代表刪除該鍵值(見圖)只需雙擊導入threadsreg即可打上線程補丁而雙擊導入uninstallreg則將恢復未安裝補丁前的狀態
小提示
★當要清除一個值項的鍵值而保留鍵名
可將鍵值設為
(如
Max Threads
=
)
無論該鍵值原來是什麼類型
清除後都將變成
字符串值
類型
所以
字符串值
類型以外的其他類型的鍵值一般直接刪除鍵值
當要修改一個值項的鍵值
可用
鍵名
=類型:鍵值
的形式(例:
Max Threads
=dword:
)
如為字符串值
則可省略類型但須在鍵值兩側加上英文雙引號(例:
Title
=
Hello
)
★當要刪除一個子項或項
如要刪除[HKEY_CURRENT_USER\Software\Xi\NetTransport
\Download]
則只需將語句設置為
[
HKEY_CURRENT_USER\Software\Microsoft\Windows \CurrentVersion\Run\MyRunningProgram]
(不含中文引號
在項或子項名稱的左側添加一個減號
)
任務:自動備份注冊表
[HKEY_CURRENT_USER]和[HKEY_LOCAL_MACHINE]這兩個分支是黑客程序
後門
病毒及惡意網站最常攻擊的目標
一旦這兩個分支下的數據被病毒修改
要一一排查被修改的數據是件非常困難的事
而手動地輸入命令備份相當麻煩
如何快速備份和恢復被
劫持
的系統呢?
第一步:打開
記事本
輸入下列內容
並保存為myregbak
bat:
@echo off
set mypath=
c:\myfolder\
?te%
if exist
%mypath%
rd /s /q
%mypath%
md
%mypath%
cd
%mypath%
reg export hkcu myreg
reg
reg export hklm sysreg
reg
這段腳本的大意是:首先定義一個變量並將其設置為C:\myfolder下以當天的日期命名的一個目錄
如果該目錄不存在就根據變量值創建此目錄
然後將當前目錄轉到這個目錄中
如果已經存在用戶個人的注冊表備份文件myreg
reg則刪除
重新導出用戶個人的注冊表數據到文件
如果已經存在系統的注冊表備份文件sysreg
reg則刪除
重新導出系統的注冊表數據到文件
小提示
如果不是管理員權限的用戶
不需要備份系統的注冊表數據(不要輸入第
行即可)
以上提供的批處理角本在Windows XP下測試通過
驅動器
路徑及文件名可自定義
第二步:在桌面
任務欄
開始菜單處創建myregbak
bat批處理文件的快捷方式
隨時手工備份
第三步:單擊
控制面板→任務計劃→添加任務計劃
在向導中選擇myregbak
bat批處理文件
創建
備份注冊表
任務
右擊
備份注冊表
任務圖標
選擇
屬性
單擊
計劃
選項卡
選擇一種每日定時或定期備份的方式
以便讓計算機能夠自動備份注冊表
任務:每天首次登錄/啟動時備份注冊表
適當修改myregbak
bat批處理文件
單擊
開始→運行
輸入
gpedit
msc
打開
組策略
雙擊打開
用戶配置→Windows設置→腳本→登錄
或
計算機配置→Windows設置→腳本→啟動
點擊
添加
按鈕並選擇myregbak
bat
即可實現每天首次登錄/啟動計算機時備份一次注冊表
修改後的批處理文件如下:
@echo off
set mypath=
c:\myfolder\
?te%
if exist
%mypath%
goto :end
md
%mypath%
cd
%mypath%
reg export hkcu myreg
reg
reg export hklm sysreg
reg
:end
注意:本文提供的批處理腳本的保存位置應與mypath的位置在同一盤符下
小提示
過期的注冊表備份文件
推薦不定期手工刪除
以免占用過多硬盤空間
如果感興趣的讀者可以嘗試編寫一個腳本文件並利用
任務計劃
實現自動刪除
From:http://tw.wingwit.com/Article/os/xtgl/201311/8742.html