標籤:des style os 使用 io ar 檔案 資料 art
一、註冊表的由來
PC機及其作業系統的一個特點就是允許使用者按照自己的要求對電腦系統的硬體和軟體進行各種各樣的配置。早期的圖形作業系統,如Win3.x中,對軟硬體工作環境的配置是通過對副檔名為.ini的檔案進行修改來完成的,但INI檔案管理起來很不方便,因為每種裝置或應用程式都得有自己的INI檔案,並且在網路上難以實現遠端存取。
為了克服上述這些問題,在Windows 95及其後繼版本中,採用了一種叫做"註冊表"的資料庫來統一進行管理,將各種資訊資源集中起來並儲存各種配置資訊。按照這一原則,Windows各版本中都採用了將應用程式和電腦系統全部配置資訊容納在一起的註冊表,用來管理應用程式和檔案的關聯、硬體裝置說明、狀態屬性以及各種狀態資訊和資料等。
與INI檔案不同的是:
1.註冊表採用了二進位形式登入資料;
2.註冊表支援子鍵,各級子關鍵字都有自己的"索引值";
3.註冊表中的索引值項可以包含可執行代碼,而不是簡單的字串;
4.在同一台電腦上,註冊表可以儲存多個使用者的特性。
註冊表的特點有:
1.註冊表允許對硬體、系統參數、應用程式和裝置驅動程式進行跟蹤配置,這使得修改某些設定後不用重新啟動成為可能。
2.註冊表中登入的硬體部分資料可以支援高版本Windows的隨插即用特性。當Windows檢測到機器上的新裝置時,就把有關資料儲存到註冊表中,另外,還可以避免新裝置與原有裝置之間的資源衝突。
3.管理員和使用者通過註冊表可以在網路上檢查系統的配置和設定,使得遠端管理得以實現。
二、使用註冊表
1.大家可以在開始菜單中的運行裡輸入regedit
2.也可以在DOS下輸入regedit
三、註冊表根鍵說明
hkey_classes_root 包含註冊的所有OLE資訊和文件類型,是從 hkey_local_machine\software\classes複製的。
hkey_current_user 包含登入的使用者配置資訊,是從hkey_users\目前使用者子樹複製的。
hkey_local_machine 包含原生配置資訊。其中config子樹是顯示器印表機資訊; enum子樹是隨插即用裝置資訊;system子樹是裝置驅動程式和服務參數的控制集合;software子樹是應用程式專用設定。
hkey_users 所有登入使用者資訊。
hkey_current_config 包含常被使用者改變的部分硬體軟體配置,如字型設定、顯示器類型、印表機設定等。是從hkey_local_machine\config複製的。
hkey_dyn_data 包含現在電腦記憶體中儲存的系統資訊。
四、註冊表詳細內容
Hkey_local_machine\software\microsoft\windows\currentVersion\explorer\user shell folders 儲存個人資料夾、收藏夾的路徑
Hkey_local_machine\system\currentControlSet\control\keyboard Layouts儲存鍵盤使用的語言以及各種中文IME
Hkey_users\.Default\software\microsoft\internet explorer\typeURLs儲存IE瀏覽器地址欄中輸入的URL地址清單資訊。清除文檔菜單時將被清空。
Hkey_users\.Default\so..\mi..\wi..\currentVersion\ex..\menuOrder\startMenu 保留程式菜單排序資訊
Hkey_users\.Default\so..\microsoft\windows\currentVersion\explorer\RunMRU 儲存"開始 * 運行..."中啟動並執行程式列表資訊。清除文檔菜單時將被清空。
Hkey_users\.Default\so..\microsoft\windows\currentVersion\explorer\ecentDocs 儲存最近使用的十五個文檔的捷徑(刪除掉可解決文檔名稱重複的毛病),清除文檔菜單時將被清空。
Hkey_local_machine\software\microsoft\windows\currentVersion\uninstall 儲存已安裝的Windows應用程式卸載資訊。
hkey_users\.default\software\microsoft\windows\currentVersion\applets 儲存Windows應用程式的紀錄資料。
Hkey_local_machine\system\CurrentControlSet\services\class 儲存控制台-增添硬體裝置-裝置類型目錄。
Hkey_local_machine\system\CurrentControlSet\control\update 立即重新整理設定。值為00設定為自動重新整理,01設定為手工重新整理[在資源管理員中按F5重新整理]。
HKEY_CURRENT_USER\Control Panel\Desktop 建立串值名MenuShowDelay=0 可使"開始"菜單中子功能表的彈出速度提高。建立串值名MinAnimate,值為1啟動動畫效果開關視窗,值為0取消動畫效果。
Hkey_local_machine\software\microsoft\windows\currentVersion\run 儲存由控制台設定的電腦啟動時運行程式的名稱,其表徵圖顯示在任務條右邊。[開機檔案夾程式運行時表徵圖也在任務條右邊]
hkey_users\.default\software\microsoft\windows\currentVersion\run儲存由使用者設定的電腦啟動時運行程式的名稱,其表徵圖顯示在任務條右側。
HKEY_CLASS_ROOT/Paint.Pricture/DefaultIcon 預設圖片的表徵圖。雙擊視窗右側的字串,在開啟的對話方塊中刪除原來的索引值,輸入%1。重新啟動後,在"我的電腦"中開啟Windows目錄,選擇"大表徵圖",然後你看到的Bmp檔案的表徵圖再也不是千篇一律的畫板表徵圖了,而是每個Bmp檔案的略圖。
Hkey-local-machine\ software\ microsoft\ windows\ currentVersion\ Policies\ Ratings 儲存IE4.0中文版"安全"*"分級審查"中設定的口令(資料加密)。
Hkey-local-machine\ software\ microsoft\ windows\ currentVersion\ explorer\ desktop\nameSpace儲存案頭中特殊的表徵圖,如資源回收筒、收件匣、MS Network等。
五、如何備份註冊表
利用登錄編輯程式手工備份註冊表
登錄編輯程式(Regedit)是作業系統內建的一款註冊表工具,通過它就能對註冊表進行各種修改。當然,"備份"與"恢複"註冊表自然是它的本能了。
(1)通過登錄編輯程式備份註冊表
由於修改註冊表有時會危及系統的安全,因此不管是WINDOWS 98還是WINDOWS 2000甚至WINDOWS XP,都把登錄編輯程式"藏"在了一個非常隱形地方,要想"請"它出山,必須通過特殊的手段才行。點擊"開始"菜單,選擇菜單上的"運行"選項,在彈出的"運行"視窗中輸入"Regedit"後,點擊"確定"按鈕,這樣就啟動了登錄編輯程式。
點擊登錄編輯程式的"註冊表"菜單,再點擊"匯出註冊表檔案"選項,在彈出的對話方塊中輸入檔案名稱"regedit",將"檔案類型"選為"註冊表檔案",再將"匯出範圍"設定為"全部",接下來選擇檔案儲存體位置,最後點擊"儲存"按鈕,就可將系統的註冊表儲存到硬碟上。
完成上述步驟後,找到剛才儲存備份檔案的那個檔案夾,就會發現備份好的檔案已經放在檔案夾中了。
(2)在DOS下備份註冊表
當註冊表損壞後,WINDOWS(包括"安全模式")無法進入,此時該怎麼辦呢?在純DOS環境下進行註冊表的備份、恢複是另外一種補救措施,下面來看看在DOS環境下,怎樣來備份、恢複註冊表。
在純DOS下通過登錄編輯程式備份與恢複註冊表前面已經講解了利用登錄編輯程式在WINDOWS環境下備份、恢複註冊表,其實"Regedit.exe"這個登錄編輯程式不僅能在WINDOWS環境中運行,也能在DOS下使用。
雖然在DOS環境中的登錄編輯程式的功能沒有在WINDOWS環境中那麼強大,但是也有它的獨到之處。比如說通過登錄編輯程式在WINDOWS中備份了註冊表,可系統出了問題之後,無法進入WINDOWS,此時就可以在純DOS下通過登錄編輯程式來恢複註冊表。
應該說在DOS環境中備份註冊表的情況還是不多見的,一般在WINDOWS中備份就行了,不過在一些特殊的情況下,這種方式就顯得很實用了。進入DOS後,再進入C盤的WINDOWS目錄,在該目錄的提示符下輸入"regedit"後按斷行符號鍵,便能查看"regedit"的使用參數。
通過"Regedit"備份註冊表仍然需要用到"system.dat"和"user.dat"這兩個檔案,而該程式的具體命令格式是這樣的:
Regedit /L:system /R:user /E filename.reg Regpath
參數含義:
/L:system指定System.dat檔案所在的路徑。
/R:user指定User.dat檔案所在的路徑。
/E:此參數指定登錄編輯程式要進行匯出註冊表操作,在此參數後面空一格,輸入匯出註冊表的檔案名稱。
Regpath:用來指定要匯出哪個註冊表的分支,如果不指定,則將匯出全部註冊表分支。在這些參數中,"/L:system"和"/R:user"參數是可選項,如果不使用這兩個參數,登錄編輯程式則認為是對WINDOWS目錄下的"system.dat"和"user.dat"檔案進行操作。如果是通過從磁碟片啟動並進入DOS,那麼就必須使用"/L"和"/R"參數來指定"system.dat"和"user.dat"檔案的具體路徑,否則登錄編輯程式將無法找到它們。
比如說,如果通過啟動盤進入DOS,則備份註冊表的命令是"Regedit /L:C:\windows\/R:C:\windows\/e regedit.reg",該命令的意思是把整個註冊表備份到WINDOWS目錄下,其檔案名稱為"regedit.reg"。而如果輸入的是"regedit /E D:\regedit.reg"這條命令,則是說把整個註冊表備份到D盤的根目錄下(省略了"/L"和"/R"參數),其檔案名稱為"Regedit.reg"。
(3)用註冊表檢查器備份註冊表
在DOS環境下的註冊表檢查器Scanreg.exe可以用來備份註冊表。
命令格式為:
Scanreg /backup /restore /comment
參數解釋:
/backup用來立即備份註冊表
/restore按照備份的時間以及日期顯示所有的備份檔案
/comment在/restore中顯示同備份檔案有關的部分
注意:在顯示備份的註冊表檔案時,壓縮備份的檔案以.CAB檔案列出,CAB檔案的後面單詞是Started或者是NotStarted,Started表示這個檔案能夠成功啟動Windows,是一個完好的備份檔案,NotStarted表示檔案沒有被用來啟動Windows,因此還不能夠知道是否是一個完好備份。
比如:如果我們要查看所有的備份檔案及同備份有關的部分,命令如下:Scanreg /restore /comment
【項目Windows部分】Windows 註冊表詳解