| 導購 | 订阅 | 在线投稿
分享
 
 
 

注冊表 基礎知識

2008-09-25 07:47:49  編輯來源:互聯網  简体版  手機版  移動版  評論  字體: ||
 

新手篇--注冊表的用途

這是寫給電腦初學者的文章,目的是讓大家對注冊表有所了解,如果你是高手可以跳過:)。注冊表是windows的命根,裏面儲存著大量的系統信息,說白了就是一個龐大的數據庫。如果你不懂什麽是數據庫,那沒關系,不影響你了解注冊表,不過最好對數據庫有所了解。注冊表裏面所有的信息平時都是由windows操作系統自主管理的,也可以通過軟件或手工修改。注冊表裏面有很多系統的重要信息,包括外設,驅動程序,軟件,用戶記錄等等,注冊表在很大程度上「指揮」電腦怎樣工作。

注冊表有很大的用處,功能非常強大,是windows的核心。通過修改注冊表,我們可以對系統進行限制、優化等等。比如我們不想讓別人用「開始」菜單,我們可以修改注冊表來達到目的。除此之外,還有很多了,你可以參考本手冊進行修改,裏面的內容很詳盡,並隨時間而充實。注冊表修改主要是多練習,細心觀察,認真思考,就會慢慢掌握的。

特別值得一提的是,學知識是爲了運用,所以並不要求對每一條命令都記住,因爲太多了,時間一長容易忘記,況且這又不是考試,緩和,呵呵。你只要知道修改方法,熟練運用就可以了,好了,限于時間,本文章到此,祝學有所成!

注冊表修改快速入門

根據本人經驗,修改注冊表有三種方法,歸納如下:

在這裏提醒大家一句,如果你沒有把握,切記在修改之前,一定要備份注冊表。

一.用windows的注冊表修改器--regedit.exe

方法是在windows的左下角開始菜單裏,點擊運行,然後鍵入regedit,回車即可。你可以在打開的修改器裏查找所需要修改的注冊表修改項。比如要禁止「開始」菜單裏的查找功能,我們知道修改的內容爲:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,在右邊的窗口中新建一個DWORD值"NoFind",並設值爲1.(查閱本手冊即可找到)。那麽我們打開注冊表修改器,可以看到有HKEY_CURRENT_USER這個根鍵,左邊還有一個"+"號,點擊"+"號展開下面的目錄樹,找到Software,再展開找Microsoft,這樣一層一層地展開,直到找到Explorer項,看右邊的窗口,你會發現有不少的鍵值,恭喜你,你快成功了。然後在右邊的窗口中單擊鼠標右鍵,選擇新建DWORD值,輸入NoFind,注意大小寫,你會發現右邊窗口中多了一個名爲NoFind的鍵名,OK,我們給它賦值,在NoFind上雙擊,然後在彈出的窗口中將原來默認的0改成1,最後,重新啓動計算機後,你會發現開始菜單裏的「查找」消失了,如果你想把它改回來,那麽按上面的方法,把1改成0,然後重新啓動就可以了。是不是很簡單?其他的修改也差不多了,關鍵是要找到修改的內容,這就是本手冊所提供的強大功能了。呵呵,相信能給你帶來很大的幫助。

二.用專門的修改軟件

如果你很懶,不想知道究竟要修改什麽內容。那麽就用專門的注冊表修改軟件了,比較有名氣的是「超級兔子魔法」,還有「windows優化大師」,在這裏評價一下,windows優化大師名字響,可是不好用。我本人比較喜歡的是另外一個叫「注冊終結者」的修改器,主要是界面友好,功能多而不容易出錯。現在隨著winXP的推出,各種修改器也隨之更新,可是功能還有待改進。現在新出的「神奇注冊表」修改器,可以修改winXP等,大家可以試試看。這些修改器都很容易上手,修改起來很方便。不過你如果想深入學習注冊表,最好還是手動修改了,不然你學不到多少東西的了。

三.手工寫.reg注冊表文件

這是修改注冊表的高級技巧了.有沒有試過自己寫注冊表文件?不用任何修改器?直接把寫好的注冊表文件——.reg倒入注冊表?呵呵,這項技巧並不需要每個人都知道了,你只要知道上面的兩個就可以了。當然,如果你是電腦迷,我們贊成深入學習。

現在我們來看看.reg文件的結構如何。

.reg文件的標准格式如下:

REGEDIT4

[路徑] (注意用大小寫)

"鍵名"="鍵值" (針對字符串型鍵值)

"鍵名"=hex:鍵值 (針對二進制型鍵值)

"鍵名"=dword:鍵值 (針對DWORD鍵值)

括號裏面的內容爲本人的注釋,寫文件的時候就不需要那些小括號了,其他上面所列的都必須包括。注意引號輸入時不能用中文輸入的引號,必須用英文的引號,否則會出錯。

那麽,怎麽寫.reg文件呢?我們需要一個文本編輯器,用windows的記事本就可以了。單擊鼠標右鍵,選擇新建文本文檔,然後在生成的文本文件裏輸入上面規格的內容就可以了,最後,選擇另存爲,輸入你想要的文件名+.reg保存即可。比如你要生成test.reg,輸入test.reg保存即可,你可以看到生成了一個帶圖標的test.reg.雙擊運行這個test.reg文件就能相應的修改注冊表了,系統會提示「是否導入注冊表」之類的信息,確定就可以了。OK,我們可以手動寫注冊表了,是不是感覺很酷?

先別急,我們來看看一個標准範例,這是從注冊表裏面導出來的,大家慢慢學習,跟著模仿一下就能寫出自己的.reg文件了。

REGEDIT4

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]

"NoRun"=dword:00000000

"NoRecentDocsMenu"=hex:01,00,00,00

"NoFavoritesMenu"=dword:00000000

"user"="sundrink"

大家可以看到,dword是16進制,hex是二進制,字符串則可以直接賦值。只要將上面的內容複制保存到文本文檔裏,然後另存爲你想要的.reg文件運行就可以了。呵呵,原來也不是很難嘛,耐心一點就可以了。當然,你要模仿,要自己動手寫.reg文件,用記事本就可以了。

說多兩句,爲什麽要手寫注冊表?因爲有時候我們會碰到一台鎖定regedit的機子,有什麽辦法解開呢?呵呵,如果你會手寫注冊表文件的話,那很簡單了......大家發揮想象吧!用不了很長時間的。

最後在文章結尾,提醒大家,注冊表修改可不是鬧著玩的,其中有些鍵值是不能隨便改的,因爲如果你沒有備份,而又不知道怎麽改回來的話,那就麻煩了,我也幫不了你。所以奉勸各位在修改注冊表之前一定要記得備份,切記!

初步認識win98注冊表

從Windows 95開始,Microsoft在Windows中引入了注冊表(英文爲REGISTRY)的概念(實際上原來在Windows NT中已有此概念)。注冊表是Windows 95及Windows 98的核心數據庫,表中存放著各種參數,直接控制著Windows的啓動、硬件驅動程序的裝載以及一些Windows應用程序運行的正常與否,如果該注冊表由于某種原因受到了破壞,輕者使Windows的啓動過程出現異常,重者可能會導致整個Windows系統的完全癱瘓。因此正確地認識、修改、及時地備份以及有問題時恢複注冊表,對Windows用戶來說就顯得非常重要了。

切記:在改動注冊表前務必進行備份,以防不測。

而當Windows 98不能正常啓動時,可在DOS方式下運行Scanreg/Restore,以恢複注冊表。 如果你只是想修改系統設置,最好使用專門的工具軟件;如果你確實要手工修改注冊表,建議在修改前做好備份。如果注冊表遭到破壞,Windows將不能正常運行,所以我們必須經常的備份注冊表.(其實Windows在每次啓動成功時都會備份注冊表)。

常用的注冊表備份方法和工具很多,大家可以根據個人選擇一個。如利用注冊表編輯器中的"導出注冊表文件"即可導出一份擴展名爲.REG的文件. 向大家推薦一個好用的備份工具--Windows光盤上:Other\Misc\ERU\ERU.EXE--緊急事故恢複工具(Emergency Recovery Utility). 如果光盤上沒有,在我的網站上有,大家可以去下載。該工具小巧,功能卻不錯,很實用,可以備份sysytem.ini、win.ini、msodos.sys、System.dat等所有的系統文件。使用方法很簡單,運行ERU,選擇一路徑(默認是A盤)如:C:\ERD備份,以後如需恢複,則在DOS下進入C:\erd目錄,運行ERD.EXE,就可完整恢複整個系統配制文件。一點說明,ERU.EXE是備份用的,而ERD則是還原的時候用的。

另外,談一下整個windows系統備份。因爲我們平時安裝軟件,不用的時候會刪除,雖然現在軟件基本能反刪除,但總是有軟件會留些垃圾下來的,所以時間一長,你的windows就越來越龐大了,整個系統的性能下降。

現在的備份軟件很多,也很方便,如ghost等,所以還是根據自己的習慣選擇。在windows下有兩個簡單的備份辦法:

一是在windows下的dos窗口用xcopy命令,

xcopy c:\windows\*.* c:\winbak/s/e/h/k/y/c,各參數意思大家用xcopy/?理解。這樣你的系統就備份在winbak目錄下了。注意:該命令需在windows的dos窗口下運行,因爲你在純dos下運行,xcopy或xcopy32將不支持長文件名和h參數下的拷貝隱含和系統文件。

二是打開資源管理器,選擇菜單的「查看」→「選項」→「查看」選中「顯示所有文件」,也就是說在資源管理器下能查看所有的文件(系統、隱含、只讀、等)。好己完成一半了,然後進入windows目錄,你會看到所有的文件,然後選定全部所有的文件(ctrl+A),(是不是有人在笑,這招我早試過,不行),哈,當然這樣你複制系統不到一半就會保護性中斷,到底是什麽原因導致複制中斷呢?我們知道windows系統使用臨時文件作爲虛擬內存,明白了吧,關鍵在此,這文件是WIN386.SWP,剛才複制到這個文件中斷了,下面就簡單了,在windows下全選中後,找到WIN386.SWP文件,按住CTRL鍵同時,用鼠標點一下,結果是除了這文件外別的都選中。然後複制到事先建好一目錄下。這樣widnows系統備份結束,這是你比較兩個目錄大小不一樣,沒關系,因爲你沒複制WIN386.SWP,所以有差別,這是臨時文件,不影響系統完整。下次你要重裝系統時只要在純dos下用ren 命令改兩個目錄名稱就行了。另外有點要注意,我們沒備份C盤根目錄下的配制文件,最好備份一下,用ERU或手動。別看啰啰唆唆說了一大堆,做起來,兩三下就解決。你完成備份後一定要驗證一下,不然沒有備份完全就死定了。驗證方法:在純DOS下用REN命令改目錄名,如:ren windows win,ren winbak windows即可,這裏假設winbak是你剛備份的目錄。

本人推薦大家用第二種方法,這種方法簡單,並且不容易出錯,你以後再也不用重裝系統了,第一次裝好windows後,趕緊備份一個windows複本,這樣會節省你的不少保貴時間。當然你要備份整個硬盤還是用專業的軟件,如:ghost,不然速度慢。

下面就接觸一下注冊表,可以在「開始」菜單中,「運行」按鈕,鍵入regedit就可打開注冊表,再次強調一下,不要亂改,它是你windows的命根子,改之前一定要備份。

認 識 注 冊 表

六大根鍵的作用

在注冊表中,所有的數據都是通過一種樹狀結構以鍵和子鍵的方式組織起來,十分類似于目錄結構。每個鍵都包含了一組特定的信息,每個鍵的鍵名都是 和它所包含的信息相關的。如果這個鍵包含子鍵,則在注冊表編輯器窗口中代表這個鍵的文件夾的左邊將有「+」符號,以表示在這個文件夾中有更多的內容。如果這個文件夾被用戶打開了,那麽這個「+」就會變成「-」。

1.HKEY_USERS

該根鍵保存了存放在本地計算機口令列表中的用戶標識和密碼列表。每個用戶的預配置信息都存儲在 HKEY_USERS 根鍵中。 HKEY_USERS 是遠程計算機中訪問的根鍵之一。

2.HKEY_CURRENT_USER

該根鍵包含本地工作站中存放的當前登錄的用戶信息 , 包括用戶登錄用戶名和暫存的密碼 ( 注:此密碼在輸入時是隱藏的 ) 。用戶登錄 Windows 98 時,其信息從 HKEY_USERS 中相應的項拷貝到 HKEY_CURRENT_USER 中。

3.HKEY_CURRENT_CONFIG

該根鍵存放著定義當前用戶桌面配置 ( 如顯示器等 ) 的數據 , 最後使用的文檔列表( MRU )和其他有關當前用戶的 Windows 98 中文版的安裝的信息。

4.HKEY_CLASSES_ROOT

包含注冊的所有ole信息和文檔類型,是從 hkey_local_machine\software\classes複制的。根據在 Windows 98 中文版中安裝的應用程序的擴展名 , 該根鍵指明其文件類型的名稱 。

5.HKEY_LOCAL_MACHINE

該根鍵存放本地計算機硬件數據 , 此根鍵下的子關鍵字包括在 SYSTEM.DAT 中 , 用來提供 HKEY_LOCAL_MACHINE 所需的信息 , 或者在遠程計算機中可訪問的一組鍵中。

該根鍵中的許多子鍵與 System.ini 文件中設置項類似。

6.HKEY_DYN_DATA

該根鍵存放了系統在運行時動態數據,此數據在每次顯示時都是變化的,因此,此根鍵下的信息沒有放在注冊表中。

認識鍵和子鍵

注冊表通過鍵和子鍵來管理各種信息。但是,注冊表中的所有信息是以各種形式的鍵值項數據保存下來。在注冊表編輯器右窗格中,保存的都是鍵值項數據。這些鍵值項數據可分爲如下三種類型:

1. 字符串值

在注冊表中,字符串值一般用來表示文件的描述、硬件的標識等。通常它由字母和數字組成,最大長度不能超過 255 個字符。比如「 D:\pwin98\trident 」即爲鍵值名「 a 」的鍵值,它是一種字符串值類型的。同樣地,「 ba 」也爲鍵值名「 MRUList 」的鍵值。通過鍵值名、鍵值就可以組成一種鍵值項數據,這就相當于 Win.ini 、 Ssyt-em.ini 文件中小節下的設置行。其實,使用注冊表編輯器將這些鍵值項數據導出後,其形式與 INI 文件中的設置行完全相同。

2. 二進制值

在注冊表中,二進制值是沒有長度限制的,可以是任意個字節長。在注冊表編輯器中,二進制以十六進制的方式顯示出來。比如鍵值名 Wizard 的鍵值「 80 00 00 00 」就是一個二進制。

3. DWORD 值

DWORD 值是一個 32 位( 4 個字節,即雙字)長度的數值。在注冊表編輯器中,您將發現系統會以十六進制的方式顯示 DWORD 值。在編輯 DWORD 數值時,可以選擇用十進制還是 16 進制的方式進行輸入。

另外:對注冊表信息的注冊和修改,一般由以下幾點實現:

安裝Win9X時,由安裝程序注冊系統信息;

安裝應用程序時,由安裝程序注冊該程序的配置信息;

添加新硬件時,由系統即插即用功能監測並注冊的信息;

通過控制面板或屬性對話框改變系統屬性與設置而實現的信息變更;

通過注冊表編輯器對信息進行手工修改.

DOS下維護注冊表的高級技巧

現在隨著電腦應用知識的普及,我想,很多朋友對WINDOWS注冊表的修改已經有不少經驗和心得。在圖形界面下對注冊表的維護和修改,就不必再提了,但有時候,我們可能會遇到更辣手的事情,如由于人爲錯誤操作或者惡性病毒感染而使系統切底崩潰,不能進入WINDOWS圖形界面時,我們對此是否只有重裝這種方法呢?本文將就在DOS下面盡量挽救系統這方面作出闡述。

一、使用scanreg/restore

我想這種方法大家也比較熟悉了,只要在DOS界面下輸入該命令,就可以在最近的5個注冊表備份裏恢複,如果幸運的話,系統就可以馬上恢複。但,事實上,用這種方法有個致命的缺陷就是你只有最近5天的注冊表備份可以選擇。因爲控制著自動備份的scanreg.exe只會在每天第一次啓動電腦時備份,如果哪天你安裝的程序或者對注冊表的修改比較多,那麽你的努力就大多白費了。這種方法就正如是眉毛胡子一起抓,正確和錯誤的都一起改掉,是否能爲恢複系統幫上忙,總有一種聽天由命的感覺。所以,筆者鼓勵大家使用第二種方法。

二、使用DOS界面的regedit.exe

如果把scanreg/restore比作是一刀切的話,這種方法更像是一次高明的外科手術,只一矢中的地針對病,把錯誤修複而完全不影響注冊表的其他健康部分。這樣,我們就能在最大限度上保留我們的工作成果了。使用regedit.exe對注冊表實行局部修改的思路是:首先,把注冊表裏有嫌疑的分支導出;然後,使用edit對它進行分析和修改;最後,把健康的分支重新導入注冊表裏。好了,我們來看看整個過程的具體操作。

1 導出注冊表分支

在DOS下導出注冊表分支的命令格式是:Regedit[/L:system] [/R:user] /E filename [regpath1]。/L:system是指定system.dat的路徑,/R:user是指定user.dat的路徑,如果不說明,系統就會在默認的路徑下找;/E:是導出注冊表分支的文件名,regpath1是要導出的注冊表分支。比如,我們要導出默認注冊表關于控制系統啓動的分支到test.reg裏,命令如下:regedit /e test.reg HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run。

2 對注冊表進行分析、修改

在DOS下面只要運行edit就能對*.reg文件進行編輯了,因爲我們導出的注冊表實際上就是文本文件。不過,要正確找出引起錯誤的地方並修改,需要我們平時對注冊表積累的經驗。下面,我們看一下它的基本結構,以使我們在對它的修改時可以有的放矢。

我們知道,注冊表裏面有6個主分支,其中容易引起致命錯誤而使WINDOWS不能正常啓動的分支有: [HKEY_LOCAL_MACHINE],記錄著本地機器的硬件配置以及安裝的相應軟件,特別是[HKEY-LOCAL-MACHINE\Enum\PCI]這個分支下面的主鍵值,一旦出錯,WINDOWS往往不能啓動。如[HKEY-LOCAL-MACHINE\Enum\PCI\VEN_8086&DEV-7111&SUBSYS_00000000&REV-01\BUS_00&DEV_07&FUNC-01]記錄的是硬盤控制器的詳細信息,下面的Logconfig記錄著它的各種參數;[HKEY_LOCAL-MACHINE\Enum\PCI\VEN-1002&DEV-4C42&SUBSYS_4C421071&REV-DC\000800]記錄的則是顯示卡的重要資料和參數,一旦這裏出錯,往往會導致WINDOWS在啓動時黑屏,然後死掉。

另外還有[HKEY-LOCAL-M ACHINE\Software\Microsoft\Windows\CurrentVersion]裏記錄著WINDOWS當前版本的信息以及啓動時執行的程序等,這是病毒最愛攻擊和修改的地方。

至于還有[HKEY-CLASS-ROOT]是記錄文件種類及其關聯信息的,[HKEY-CURRENT-USER]裏記錄著當前用戶的各種信息,包括登陸的密碼和各方面的設置等,這些一般不會引起WINDOWS的致命錯誤,這裏也不再詳細分析了。

當我們對這些鍵值分析和修改時,如果碰到什麽不清處的地方,可以通過第1點的導出注冊表方法,把一些備份注冊表的相應分支導出,進行比較。WINDOWS的注冊表備份都放在C:\windows\sysbackup裏面,如我們要導出第一個注冊表備份的[HKEY_LOCAL_MACHINE]分支,那麽我們可以先進入該目錄,然後鍵入命令:extract /e rb000.cab *.*,先把system.dat和user.dat解壓出來,再鍵入命令:regedit /L:system.dat /R:user.dat /e backup.reg HKEY-LOCAL-MACHINE。 筆者在這裏提醒一下,這是一個很好的解決問題的方法,再用上一些文件比較軟件可以很快的找出錯誤的,請諸位慢慢體會。

3 把修改好的注冊表分支重新導入

命令的格式爲:regedit /L:system /R:user file1.reg file2.reg。我們一般都要修改默認的注冊表文件,所以在實際使用中只需鍵入:regedit file1.reg就行了。

好了,講了這麽久,我們看看一個具體的案例。

學院機房裏的一台機器在重新啓動後,無論用正常模式或者安全模式都不能進入WINDOWS界面,表現爲啓動過程中硬盤突然不讀。用SCANDISK檢查過硬盤,並沒有發現問題。在啓動過程中選擇生成BOOTLOG.TXT文件,發現啓動到硬盤控制器後就斷掉了。本來想用scanreg/restore恢複備份的注冊表,可是該機器爲了加快啓動,並沒有自動備份。于是,用regedit把[HKEY-LOCAL-MACHINE\Enum\PCI]分支導出,鍵入:regedit /e hdc.reg HKEY-LOCAL-MACHINE\Enum\PCI;接著用EDIT查看關于硬盤控制器的部分,發現有"ChannelOptions"=hex:00,問題到這裏終于發現了,原來是有人把IDE控制器設置成不使用,造成在加載硬盤控制器後,系統不能訪問硬盤,所以把它改爲:hex:02;再鍵入命令:regedit hdc.reg,把修改後的信息導入。重新啓動機器,一切正常運行了。

這樣,在不損壞任何數據的情況下,就把問題解決了。希望這個例子能給大家帶來這種DOS下維護注冊表技巧的啓發,畢竟,我們硬盤上面有很多都是無價的數據。

 
新手篇--注冊表的用途 這是寫給電腦初學者的文章,目的是讓大家對注冊表有所了解,如果你是高手可以跳過:)。注冊表是windows的命根,裏面儲存著大量的系統信息,說白了就是一個龐大的數據庫。如果你不懂什麽是數據庫,那沒關系,不影響你了解注冊表,不過最好對數據庫有所了解。注冊表裏面所有的信息平時都是由windows操作系統自主管理的,也可以通過軟件或手工修改。注冊表裏面有很多系統的重要信息,包括外設,驅動程序,軟件,用戶記錄等等,注冊表在很大程度上「指揮」電腦怎樣工作。 注冊表有很大的用處,功能非常強大,是windows的核心。通過修改注冊表,我們可以對系統進行限制、優化等等。比如我們不想讓別人用「開始」菜單,我們可以修改注冊表來達到目的。除此之外,還有很多了,你可以參考本手冊進行修改,裏面的內容很詳盡,並隨時間而充實。注冊表修改主要是多練習,細心觀察,認真思考,就會慢慢掌握的。 特別值得一提的是,學知識是爲了運用,所以並不要求對每一條命令都記住,因爲太多了,時間一長容易忘記,況且這又不是考試,緩和,呵呵。你只要知道修改方法,熟練運用就可以了,好了,限于時間,本文章到此,祝學有所成! 注冊表修改快速入門 根據本人經驗,修改注冊表有三種方法,歸納如下:   在這裏提醒大家一句,如果你沒有把握,切記在修改之前,一定要備份注冊表。 一.用windows的注冊表修改器--regedit.exe 方法是在windows的左下角開始菜單裏,點擊運行,然後鍵入regedit,回車即可。你可以在打開的修改器裏查找所需要修改的注冊表修改項。比如要禁止「開始」菜單裏的查找功能,我們知道修改的內容爲:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,在右邊的窗口中新建一個DWORD值"NoFind",並設值爲1.(查閱本手冊即可找到)。那麽我們打開注冊表修改器,可以看到有HKEY_CURRENT_USER這個根鍵,左邊還有一個"+"號,點擊"+"號展開下面的目錄樹,找到Software,再展開找Microsoft,這樣一層一層地展開,直到找到Explorer項,看右邊的窗口,你會發現有不少的鍵值,恭喜你,你快成功了。然後在右邊的窗口中單擊鼠標右鍵,選擇新建DWORD值,輸入NoFind,注意大小寫,你會發現右邊窗口中多了一個名爲NoFind的鍵名,OK,我們給它賦值,在NoFind上雙擊,然後在彈出的窗口中將原來默認的0改成1,最後,重新啓動計算機後,你會發現開始菜單裏的「查找」消失了,如果你想把它改回來,那麽按上面的方法,把1改成0,然後重新啓動就可以了。是不是很簡單?其他的修改也差不多了,關鍵是要找到修改的內容,這就是本手冊所提供的強大功能了。呵呵,相信能給你帶來很大的幫助。   二.用專門的修改軟件 如果你很懶,不想知道究竟要修改什麽內容。那麽就用專門的注冊表修改軟件了,比較有名氣的是「超級兔子魔法」,還有「windows優化大師」,在這裏評價一下,windows優化大師名字響,可是不好用。我本人比較喜歡的是另外一個叫「注冊終結者」的修改器,主要是界面友好,功能多而不容易出錯。現在隨著winXP的推出,各種修改器也隨之更新,可是功能還有待改進。現在新出的「神奇注冊表」修改器,可以修改winXP等,大家可以試試看。這些修改器都很容易上手,修改起來很方便。不過你如果想深入學習注冊表,最好還是手動修改了,不然你學不到多少東西的了。 三.手工寫.reg注冊表文件 這是修改注冊表的高級技巧了.有沒有試過自己寫注冊表文件?不用任何修改器?直接把寫好的注冊表文件——.reg倒入注冊表?呵呵,這項技巧並不需要每個人都知道了,你只要知道上面的兩個就可以了。當然,如果你是電腦迷,我們贊成深入學習。 現在我們來看看.reg文件的結構如何。 .reg文件的標准格式如下: REGEDIT4 [路徑] (注意用大小寫) "鍵名"="鍵值" (針對字符串型鍵值) "鍵名"=hex:鍵值 (針對二進制型鍵值) "鍵名"=dword:鍵值 (針對DWORD鍵值) 括號裏面的內容爲本人的注釋,寫文件的時候就不需要那些小括號了,其他上面所列的都必須包括。注意引號輸入時不能用中文輸入的引號,必須用英文的引號,否則會出錯。 那麽,怎麽寫.reg文件呢?我們需要一個文本編輯器,用windows的記事本就可以了。單擊鼠標右鍵,選擇新建文本文檔,然後在生成的文本文件裏輸入上面規格的內容就可以了,最後,選擇另存爲,輸入你想要的文件名+.reg保存即可。比如你要生成test.reg,輸入test.reg保存即可,你可以看到生成了一個帶圖標的test.reg.雙擊運行這個test.reg文件就能相應的修改注冊表了,系統會提示「是否導入注冊表」之類的信息,確定就可以了。OK,我們可以手動寫注冊表了,是不是感覺很酷?  先別急,我們來看看一個標准範例,這是從注冊表裏面導出來的,大家慢慢學習,跟著模仿一下就能寫出自己的.reg文件了。 REGEDIT4 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer] "NoRun"=dword:00000000 "NoRecentDocsMenu"=hex:01,00,00,00 "NoFavoritesMenu"=dword:00000000 "user"="sundrink" 大家可以看到,dword是16進制,hex是二進制,字符串則可以直接賦值。只要將上面的內容複制保存到文本文檔裏,然後另存爲你想要的.reg文件運行就可以了。呵呵,原來也不是很難嘛,耐心一點就可以了。當然,你要模仿,要自己動手寫.reg文件,用記事本就可以了。 說多兩句,爲什麽要手寫注冊表?因爲有時候我們會碰到一台鎖定regedit的機子,有什麽辦法解開呢?呵呵,如果你會手寫注冊表文件的話,那很簡單了......大家發揮想象吧!用不了很長時間的。 最後在文章結尾,提醒大家,注冊表修改可不是鬧著玩的,其中有些鍵值是不能隨便改的,因爲如果你沒有備份,而又不知道怎麽改回來的話,那就麻煩了,我也幫不了你。所以奉勸各位在修改注冊表之前一定要記得備份,切記! 初步認識win98注冊表   從Windows 95開始,Microsoft在Windows中引入了注冊表(英文爲REGISTRY)的概念(實際上原來在Windows NT中已有此概念)。注冊表是Windows 95及Windows 98的核心數據庫,表中存放著各種參數,直接控制著Windows的啓動、硬件驅動程序的裝載以及一些Windows應用程序運行的正常與否,如果該注冊表由于某種原因受到了破壞,輕者使Windows的啓動過程出現異常,重者可能會導致整個Windows系統的完全癱瘓。因此正確地認識、修改、及時地備份以及有問題時恢複注冊表,對Windows用戶來說就顯得非常重要了。 切記:在改動注冊表前務必進行備份,以防不測。 而當Windows 98不能正常啓動時,可在DOS方式下運行Scanreg/Restore,以恢複注冊表。 如果你只是想修改系統設置,最好使用專門的工具軟件;如果你確實要手工修改注冊表,建議在修改前做好備份。如果注冊表遭到破壞,Windows將不能正常運行,所以我們必須經常的備份注冊表.(其實Windows在每次啓動成功時都會備份注冊表)。 常用的注冊表備份方法和工具很多,大家可以根據個人選擇一個。如利用注冊表編輯器中的"導出注冊表文件"即可導出一份擴展名爲.REG的文件. 向大家推薦一個好用的備份工具--Windows光盤上:Other\Misc\ERU\ERU.EXE--緊急事故恢複工具(Emergency Recovery Utility). 如果光盤上沒有,在我的網站上有,大家可以去下載。該工具小巧,功能卻不錯,很實用,可以備份sysytem.ini、win.ini、msodos.sys、System.dat等所有的系統文件。使用方法很簡單,運行ERU,選擇一路徑(默認是A盤)如:C:\ERD備份,以後如需恢複,則在DOS下進入C:\erd目錄,運行ERD.EXE,就可完整恢複整個系統配制文件。一點說明,ERU.EXE是備份用的,而ERD則是還原的時候用的。 另外,談一下整個windows系統備份。因爲我們平時安裝軟件,不用的時候會刪除,雖然現在軟件基本能反刪除,但總是有軟件會留些垃圾下來的,所以時間一長,你的windows就越來越龐大了,整個系統的性能下降。 現在的備份軟件很多,也很方便,如ghost等,所以還是根據自己的習慣選擇。在windows下有兩個簡單的備份辦法: 一是在windows下的dos窗口用xcopy命令, xcopy c:\windows\*.* c:\winbak/s/e/h/k/y/c,各參數意思大家用xcopy/?理解。這樣你的系統就備份在winbak目錄下了。注意:該命令需在windows的dos窗口下運行,因爲你在純dos下運行,xcopy或xcopy32將不支持長文件名和h參數下的拷貝隱含和系統文件。 二是打開資源管理器,選擇菜單的「查看」→「選項」→「查看」選中「顯示所有文件」,也就是說在資源管理器下能查看所有的文件(系統、隱含、只讀、等)。好己完成一半了,然後進入windows目錄,你會看到所有的文件,然後選定全部所有的文件(ctrl+A),(是不是有人在笑,這招我早試過,不行),哈,當然這樣你複制系統不到一半就會保護性中斷,到底是什麽原因導致複制中斷呢?我們知道windows系統使用臨時文件作爲虛擬內存,明白了吧,關鍵在此,這文件是WIN386.SWP,剛才複制到這個文件中斷了,下面就簡單了,在windows下全選中後,找到WIN386.SWP文件,按住CTRL鍵同時,用鼠標點一下,結果是除了這文件外別的都選中。然後複制到事先建好一目錄下。這樣widnows系統備份結束,這是你比較兩個目錄大小不一樣,沒關系,因爲你沒複制WIN386.SWP,所以有差別,這是臨時文件,不影響系統完整。下次你要重裝系統時只要在純dos下用ren 命令改兩個目錄名稱就行了。另外有點要注意,我們沒備份C盤根目錄下的配制文件,最好備份一下,用ERU或手動。別看啰啰唆唆說了一大堆,做起來,兩三下就解決。你完成備份後一定要驗證一下,不然沒有備份完全就死定了。驗證方法:在純DOS下用REN命令改目錄名,如:ren windows win,ren winbak windows即可,這裏假設winbak是你剛備份的目錄。 本人推薦大家用第二種方法,這種方法簡單,並且不容易出錯,你以後再也不用重裝系統了,第一次裝好windows後,趕緊備份一個windows複本,這樣會節省你的不少保貴時間。當然你要備份整個硬盤還是用專業的軟件,如:ghost,不然速度慢。 下面就接觸一下注冊表,可以在「開始」菜單中,「運行」按鈕,鍵入regedit就可打開注冊表,再次強調一下,不要亂改,它是你windows的命根子,改之前一定要備份。   認 識 注 冊 表 六大根鍵的作用 在注冊表中,所有的數據都是通過一種樹狀結構以鍵和子鍵的方式組織起來,十分類似于目錄結構。每個鍵都包含了一組特定的信息,每個鍵的鍵名都是 和它所包含的信息相關的。如果這個鍵包含子鍵,則在注冊表編輯器窗口中代表這個鍵的文件夾的左邊將有「+」符號,以表示在這個文件夾中有更多的內容。如果這個文件夾被用戶打開了,那麽這個「+」就會變成「-」。 1.HKEY_USERS 該根鍵保存了存放在本地計算機口令列表中的用戶標識和密碼列表。每個用戶的預配置信息都存儲在 HKEY_USERS 根鍵中。 HKEY_USERS 是遠程計算機中訪問的根鍵之一。 2.HKEY_CURRENT_USER 該根鍵包含本地工作站中存放的當前登錄的用戶信息 , 包括用戶登錄用戶名和暫存的密碼 ( 注:此密碼在輸入時是隱藏的 ) 。用戶登錄 Windows 98 時,其信息從 HKEY_USERS 中相應的項拷貝到 HKEY_CURRENT_USER 中。 3.HKEY_CURRENT_CONFIG 該根鍵存放著定義當前用戶桌面配置 ( 如顯示器等 ) 的數據 , 最後使用的文檔列表( MRU )和其他有關當前用戶的 Windows 98 中文版的安裝的信息。 4.HKEY_CLASSES_ROOT 包含注冊的所有ole信息和文檔類型,是從 hkey_local_machine\software\classes複制的。根據在 Windows 98 中文版中安裝的應用程序的擴展名 , 該根鍵指明其文件類型的名稱 。 5.HKEY_LOCAL_MACHINE 該根鍵存放本地計算機硬件數據 , 此根鍵下的子關鍵字包括在 SYSTEM.DAT 中 , 用來提供 HKEY_LOCAL_MACHINE 所需的信息 , 或者在遠程計算機中可訪問的一組鍵中。 該根鍵中的許多子鍵與 System.ini 文件中設置項類似。 6.HKEY_DYN_DATA 該根鍵存放了系統在運行時動態數據,此數據在每次顯示時都是變化的,因此,此根鍵下的信息沒有放在注冊表中。 認識鍵和子鍵 注冊表通過鍵和子鍵來管理各種信息。但是,注冊表中的所有信息是以各種形式的鍵值項數據保存下來。在注冊表編輯器右窗格中,保存的都是鍵值項數據。這些鍵值項數據可分爲如下三種類型: 1. 字符串值 在注冊表中,字符串值一般用來表示文件的描述、硬件的標識等。通常它由字母和數字組成,最大長度不能超過 255 個字符。比如「 D:\pwin98\trident 」即爲鍵值名「 a 」的鍵值,它是一種字符串值類型的。同樣地,「 ba 」也爲鍵值名「 MRUList 」的鍵值。通過鍵值名、鍵值就可以組成一種鍵值項數據,這就相當于 Win.ini 、 Ssyt-em.ini 文件中小節下的設置行。其實,使用注冊表編輯器將這些鍵值項數據導出後,其形式與 INI 文件中的設置行完全相同。 2. 二進制值 在注冊表中,二進制值是沒有長度限制的,可以是任意個字節長。在注冊表編輯器中,二進制以十六進制的方式顯示出來。比如鍵值名 Wizard 的鍵值「 80 00 00 00 」就是一個二進制。 3. DWORD 值 DWORD 值是一個 32 位( 4 個字節,即雙字)長度的數值。在注冊表編輯器中,您將發現系統會以十六進制的方式顯示 DWORD 值。在編輯 DWORD 數值時,可以選擇用十進制還是 16 進制的方式進行輸入。 另外:對注冊表信息的注冊和修改,一般由以下幾點實現: 安裝Win9X時,由安裝程序注冊系統信息; 安裝應用程序時,由安裝程序注冊該程序的配置信息; 添加新硬件時,由系統即插即用功能監測並注冊的信息; 通過控制面板或屬性對話框改變系統屬性與設置而實現的信息變更; 通過注冊表編輯器對信息進行手工修改. DOS下維護注冊表的高級技巧 現在隨著電腦應用知識的普及,我想,很多朋友對WINDOWS注冊表的修改已經有不少經驗和心得。在圖形界面下對注冊表的維護和修改,就不必再提了,但有時候,我們可能會遇到更辣手的事情,如由于人爲錯誤操作或者惡性病毒感染而使系統切底崩潰,不能進入WINDOWS圖形界面時,我們對此是否只有重裝這種方法呢?本文將就在DOS下面盡量挽救系統這方面作出闡述。 一、使用scanreg/restore 我想這種方法大家也比較熟悉了,只要在DOS界面下輸入該命令,就可以在最近的5個注冊表備份裏恢複,如果幸運的話,系統就可以馬上恢複。但,事實上,用這種方法有個致命的缺陷就是你只有最近5天的注冊表備份可以選擇。因爲控制著自動備份的scanreg.exe只會在每天第一次啓動電腦時備份,如果哪天你安裝的程序或者對注冊表的修改比較多,那麽你的努力就大多白費了。這種方法就正如是眉毛胡子一起抓,正確和錯誤的都一起改掉,是否能爲恢複系統幫上忙,總有一種聽天由命的感覺。所以,筆者鼓勵大家使用第二種方法。 二、使用DOS界面的regedit.exe 如果把scanreg/restore比作是一刀切的話,這種方法更像是一次高明的外科手術,只一矢中的地針對病,把錯誤修複而完全不影響注冊表的其他健康部分。這樣,我們就能在最大限度上保留我們的工作成果了。使用regedit.exe對注冊表實行局部修改的思路是:首先,把注冊表裏有嫌疑的分支導出;然後,使用edit對它進行分析和修改;最後,把健康的分支重新導入注冊表裏。好了,我們來看看整個過程的具體操作。 1 導出注冊表分支 在DOS下導出注冊表分支的命令格式是:Regedit[/L:system] [/R:user] /E filename [regpath1]。/L:system是指定system.dat的路徑,/R:user是指定user.dat的路徑,如果不說明,系統就會在默認的路徑下找;/E:是導出注冊表分支的文件名,regpath1是要導出的注冊表分支。比如,我們要導出默認注冊表關于控制系統啓動的分支到test.reg裏,命令如下:regedit /e test.reg HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run。 2 對注冊表進行分析、修改 在DOS下面只要運行edit就能對*.reg文件進行編輯了,因爲我們導出的注冊表實際上就是文本文件。不過,要正確找出引起錯誤的地方並修改,需要我們平時對注冊表積累的經驗。下面,我們看一下它的基本結構,以使我們在對它的修改時可以有的放矢。 我們知道,注冊表裏面有6個主分支,其中容易引起致命錯誤而使WINDOWS不能正常啓動的分支有:   [HKEY_LOCAL_MACHINE],記錄著本地機器的硬件配置以及安裝的相應軟件,特別是[HKEY-LOCAL-MACHINE\Enum\PCI]這個分支下面的主鍵值,一旦出錯,WINDOWS往往不能啓動。如[HKEY-LOCAL-MACHINE\Enum\PCI\VEN_8086&DEV-7111&SUBSYS_00000000&REV-01\BUS_00&DEV_07&FUNC-01]記錄的是硬盤控制器的詳細信息,下面的Logconfig記錄著它的各種參數;[HKEY_LOCAL-MACHINE\Enum\PCI\VEN-1002&DEV-4C42&SUBSYS_4C421071&REV-DC\000800]記錄的則是顯示卡的重要資料和參數,一旦這裏出錯,往往會導致WINDOWS在啓動時黑屏,然後死掉。 另外還有[HKEY-LOCAL-M ACHINE\Software\Microsoft\Windows\CurrentVersion]裏記錄著WINDOWS當前版本的信息以及啓動時執行的程序等,這是病毒最愛攻擊和修改的地方。 至于還有[HKEY-CLASS-ROOT]是記錄文件種類及其關聯信息的,[HKEY-CURRENT-USER]裏記錄著當前用戶的各種信息,包括登陸的密碼和各方面的設置等,這些一般不會引起WINDOWS的致命錯誤,這裏也不再詳細分析了。 當我們對這些鍵值分析和修改時,如果碰到什麽不清處的地方,可以通過第1點的導出注冊表方法,把一些備份注冊表的相應分支導出,進行比較。WINDOWS的注冊表備份都放在C:\windows\sysbackup裏面,如我們要導出第一個注冊表備份的[HKEY_LOCAL_MACHINE]分支,那麽我們可以先進入該目錄,然後鍵入命令:extract /e rb000.cab *.*,先把system.dat和user.dat解壓出來,再鍵入命令:regedit /L:system.dat /R:user.dat /e backup.reg HKEY-LOCAL-MACHINE。 筆者在這裏提醒一下,這是一個很好的解決問題的方法,再用上一些文件比較軟件可以很快的找出錯誤的,請諸位慢慢體會。 3 把修改好的注冊表分支重新導入 命令的格式爲:regedit /L:system /R:user file1.reg file2.reg。我們一般都要修改默認的注冊表文件,所以在實際使用中只需鍵入:regedit file1.reg就行了。    好了,講了這麽久,我們看看一個具體的案例。 學院機房裏的一台機器在重新啓動後,無論用正常模式或者安全模式都不能進入WINDOWS界面,表現爲啓動過程中硬盤突然不讀。用SCANDISK檢查過硬盤,並沒有發現問題。在啓動過程中選擇生成BOOTLOG.TXT文件,發現啓動到硬盤控制器後就斷掉了。本來想用scanreg/restore恢複備份的注冊表,可是該機器爲了加快啓動,並沒有自動備份。于是,用regedit把[HKEY-LOCAL-MACHINE\Enum\PCI]分支導出,鍵入:regedit /e hdc.reg HKEY-LOCAL-MACHINE\Enum\PCI;接著用EDIT查看關于硬盤控制器的部分,發現有"ChannelOptions"=hex:00,問題到這裏終于發現了,原來是有人把IDE控制器設置成不使用,造成在加載硬盤控制器後,系統不能訪問硬盤,所以把它改爲:hex:02;再鍵入命令:regedit hdc.reg,把修改後的信息導入。重新啓動機器,一切正常運行了。 這樣,在不損壞任何數據的情況下,就把問題解決了。希望這個例子能給大家帶來這種DOS下維護注冊表技巧的啓發,畢竟,我們硬盤上面有很多都是無價的數據。
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有