使用者工具

網站工具


os:windows:regedit

reference: https://blog.xuite.net/mike181683e/wretch/585070912

總體結構分析

註冊表包括以下5個根鍵
1.HKEY_CLASSES_ROOT
說明:該根鍵包括啟動應用程序所需的全部信息,包括擴展名,應用程序與文檔之間的關係,驅動程序名,DDE和OLE信息,類ID編號和應用程序與文檔的圖標等。
2.HKEY_CURRENT_USER
說明:該根鍵包括當前登錄用戶的配置信息,包括環境變量,個人程序以及桌面設置等
3.HKEY_LOCAL_MACHINE
說明:該根鍵包括本地計算機的系統信息,包括硬件和操作系統信息,安全數據和計算機專用的各類軟件設置信息
4.HKEY_USERS
說明:該根鍵包括計算機的所有用戶使用的配置數據,這些數據只有在用戶登錄系統時才能訪問。這些信息告訴系統當前用戶使用的圖標,激活的程序組,開始菜單的內容以及顏色,字體
5.HKEY_CURRENT_CONFIG
說明:該根鍵包括當前硬件的配置信息,其中的信息是從HKEY_LOCAL_MACHINE中映射出來的。

HKEY_CLASSES_ROOT

我們知道,在這一個根鍵中記錄的是WINDOWS操作系統中所有數據文件的信息內容,主要記錄了不同文件的文件擴展名和與之相對應的應用程序。這就是為什麼我們雙擊某一個文檔的時候,可以由系統自動調出應用程序的所在了。這個根鍵的子鍵當大家展開時發現是非常多的,它主要分為兩種:

  • 是已經註冊的各類文件的擴展名
  • 是各種文件類型的有關信息。

下面我們以AVIFILE舉例說明一下其下面的子項的含義:
1、CLSID:分類標識,系統可以用這個類標識來識別相同類型的文件
2、Compressors:它下面有兩個子項:auds:用於設置音頻數據壓縮程序的類標識;vids:用於設置視頻數據壓縮程序的類標識
3、defaultlcon:用於設置默認圖標,這個大家可以改一下試試
4、RIFFHandlers:在它的下面有兩個類標識:AVI:用於設置AVI文件的類標識;WAVE:用於設置WAVE文件的類標識
5、protocol:包括了執行程序和編輯程序的路徑和文件名:
StdExecute(stdfileediting)server:用於指定編輯程序; StdExecute(stdfileediting)_PackageObjects:用於指定後打開AVI包對象的編輯程序;StdExecute(stdfileediting)_verb:用於設置編輯程序時的工作狀態,其中有0、1、2等狀態
6、Shell子項:用於設置視頻文件的外殼:open:用於設置打開AVI文件的程序;play:用於設置播放命令的程序
7、Shellex:包括了視頻文件的外殼擴展

HKEY_CURRENT_USER

HKEY_CURRENT_USER 是 HKEY_USERS 的子機碼
此根鍵中保存的信息(當前用戶的子項信息)與HKEY_USERS_DEFAULT下面的一模一樣的。任何對 HKEY_CURRENT_USER根鍵中的信息的修改都會導致對HKEY_USERS_DEFAULT中子項的修改

HKEY_LOCAL_MACHINE

此根鍵中存放的是用來控制系統和軟件的設置,由於這些設置是針對那些使用Windows系統的用戶而設置的,是一個公共配置信息,所以它與具體的用戶沒多大關係。
1、HARDWARE子項:該子項包括了系統使用的浮點處理器、串口等信息:

  • ACPI:存放高級電源管理接口數據;
  • DEVICEMAP:用於存放設備映射;
  • DEscriptION:存放有關係統信息;
  • RESOURCEMAP:用於存放資源列表

2、SAM子項:哈哈,這部分被保護了,看不到
3、SECURITY子項:該子項只是為將來的高級功能而預留的
4、SOFTWARE子項:該子項中保留的是所有已安裝的32位應用程序的信息,各個程序的控制信息分別安裝在相應的子項中,由於不同的計算機安裝的應用程序互不相同,因此這個子項下面的子項信息也不完全一樣。
5、SYSTEM子項:該子項是啟動時所需的信息和修復系統時所需要的信息

  • currentcontrol:保存了當前驅動程序控制集中的所有信息
注意

64 位版本的 Windows XP、Windows Server 2003 和 Windows Vista 中的登錄會分成 32 位和 64 位金鑰。 許多 32 位金輪的名稱與其 64 位對應專案相同,反之亦然。 64 位版本的 Windows XP、Windows Server 2003 和 Windows Vista 隨附的預設 64 位版本登錄編輯程式會在節點 HKEY_LOCAL_MACHINE\Software\WOW6432Node 中顯示 32 位金鑰。 需有關如何在 Windows 64 位元版本中檢視登錄的詳細資訊,請參閱如何使用 64 位元版本的 Windows 檢視系統登錄。

HKEY_USERS

此根鍵中保存的是默認用戶(default),當前登錄用戶和軟件(software) 的信息,其中DEFAULT子項是其中最重要的,它的配置是針對未來將會被創建的新用戶的。新用戶根據默認用戶的配置信息來生成自己的配置文件,該配置文件包括環境、屏幕和聲音等多種信息,其中常用的3項有:
1、AppEvents子項:它包括了各種應用事件的列表:EventLabels:按字母順序列表;Schemes:按事件分類列表
2、Control Panel子項:它包括內容與桌面、光標、鍵盤和鼠標等設置有關
3、Keyboard layout子項:用於鍵盤的佈局(如語言的加載順序等)
​ * Preload:語言的加載順序
​ * Substitutes:設置可替換的鍵盤語言佈局
​ * Toggle:用於選擇鍵盤語言

HKEY_CURRENT_CONFIG

此根鍵存放的是當前配置的文件信息。

標題

實際上細心的讀者已經發現了,五大根鍵實際上並不是五個,現在把這個做了總結
我們都知道用regedit或regedit32都可以打開註冊表文件,在XP系統下的時候,這兩種方法其實都是一樣的,當我們打開註冊表後看到了類似資源管理器的東西,這裡面都有什麼呢?
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_CURRENT_CONFIG
看是五個分支,其實就是HKEY_LOCAL_MACHINEHKEY_USERS這兩個才是真正的註冊表鍵,其它都是從某個分支映射出來的, 相當於快捷方式或是別名,這樣的話看註冊表就簡單了許多了,現在說一下每個分支的作用:
HKEY_CLASSES_ROOT:列出當前計算機註冊的所有COM服務器和與應用程序相關聯的所有文件擴展名。
HKEY_CURRENT_USER:保存著當前登錄到由這個註冊服務的計算機上的用戶配置文件。
HKEY_LOCAL_MACHINE:保存操作系統及硬件相關信息的配置單元,它是一個公共的配置信息與具體用戶無關,其中關鍵是兩個鍵值
SOFTWARE:保存著與這台電腦中安裝的應用程序相關的設置。
SYSTEM:WINDOWS所裝載的設備驅動程序以及當WINDOWS啟動時所需要的各種參數。
HKEY_USERS:包含當前計算機所有用戶配置文件。
HKEY_CURRENT_CONFIG: 計算機當前會話中的所有硬件配置信息

註冊表的基本操作

  1. 創建項和項值
  2. 更值項的數據
  3. 刪除項、子項或值項
  4. 查找項、值項或數據

註冊表中常用的數據類型有5種:

  • 二進制值(reg_binary):多數硬件信息以二進制數據存儲,而以十六進制格式顯示在註冊表編輯器中
  • 字符串值(reg_sz):包括字符串的註冊表鍵,使用字符串數據類型
  • 雙字節值(reg_dword):是32位信息常顯示成4個字節。它在出錯控制功能上用處極大,其數據一般以十六進制格式顯示在註冊表編輯器中。
  • 多字符串值(reg_multi_sz):允許將一系列項目作為單獨的一個值使用。對於多種網絡協議、多個項目、設備列表以及其他類似的列表項目來說,可以使用多字符串值
  • 可擴充字符串值(reg_expand_sz):代表一個可擴展的字符串
os/windows/regedit.txt · 上一次變更: 2022/12/10 09:41 由 eddie