天天看點

系統資料庫

<dl></dl>

<dt>目錄</dt>

<dd></dd>

如何打開系統資料庫

系統資料庫資料庫檔案的存放位置

系統資料庫的由來

系統資料庫的作用

與系統資料庫有關的術語

系統資料庫的結構

控制鍵

各主鍵的簡單介紹

關于子鍵的一點注解

系統資料庫的損壞和解決方法

  Win98/98SE/Me

  運作中輸入regedit.exe 無權限限制

  Win2000/XP

  1·開始&gt;&gt;運作.中輸入regedit

  2.運作中輸入regedit32

  第一種方法打開的系統資料庫編輯器和Win98下的一樣,而且功能相同,而使用第二種方法打開的系統資料庫編輯器則可以友善的設定權限,建議網絡管理者使用第2種方法打開系統資料庫編輯器修改需要修改的權限設定部分以免被他人惡意修改。

  Windows Vista

  1.在開始菜單搜尋框中輸入regedit并按Enter鍵.(需要管理者權限)

  2.在運作中輸入regedit.exe(需要管理者權限)

  2000/XP系統資料庫檔案按功能來分,也是由系統系統資料庫檔案和使用者系統資料庫檔案兩類組成的

  系統資料庫檔案存放系統的所有設定資訊:

  系統設定和預設使用者配置資料存放在系統\系統檔案夾\SYSTEM32\CONFIG檔案夾下的6個檔案(隐藏,無擴充名),DEFAULT、SAM、SECURITY、SOFTWARE、USERDIFF和SYSTEM中,而使用者的配置資訊存放在系統所在磁盤的\Documents and Setting\檔案夾,包括ntuser.dat ntuser.ini ntuser.dat.log

  在Windows 3.x作業系統中,系統資料庫是一個極小檔案,其檔案名為Reg.dat,裡面隻存放了某些檔案類型的應用程式關聯,大部分的設定放在Win.ini、System.ini等多個初始化INI檔案中。由于這些初始化檔案不便于管理和維護,時常出現一些因INI檔案遭到破壞而導緻系統無法的啟動的問題。為了使系統運作得更為穩定、健壯,Windows 95/98設計師們借用了Windows NT中的系統資料庫的思想,将系統資料庫引入到Windows 95/98作業系統中,而且将INI檔案中的大部分設定也移植到系統資料庫中,是以,系統資料庫在Windows 95/98作業系統的啟動、運作過程中起着重要的作用。

  系統資料庫是為Windows NT和Windows95中所有32位硬體/驅動和32位應用程式設計的資料檔案。16位驅動在Winnt下無法工作,是以所有裝置都通過系統資料庫來控制,一般這些是通過BIOS來控制的。在Win95下,16位驅動會繼續以實模式方式裝置工作,它們使用system.ini來控制。16位應用程式會工作在NT或者Win95 下,它們的程式仍然會參考win.ini和system.ini檔案獲得資訊和控制。

  在沒有系統資料庫的情況下,作業系統不會獲得必須的資訊來運作和控制附屬的裝置和應用程式及正确響應使用者的輸入。

  在系統中系統資料庫是一個記錄32位驅動的設定和位置的資料庫。當作業系統需要存取硬體裝置,它使用驅動程式,甚至裝置是一個BIOS支援的裝置。無BIOS支援裝置安裝時必須需要驅動,這個驅動是獨立于作業系統的,但是作業系統需要知道從×××到它們,檔案名、版本号、其他設定和資訊,沒有系統資料庫對裝置的記錄,它們就不能被使用。

  當一個使用者準備運作一個應用程式,系統資料庫提供應用程式資訊給作業系統,這樣應用程式可以被找到,正确資料檔案的位置被規定,其他設定也都可以被使用。

  系統資料庫儲存關于預設資料和輔助檔案的位置資訊、菜單、按鈕條、視窗狀态和其他可選項。它同樣也儲存了安裝資訊(比如說日期),安裝軟體的使用者,軟體版本号和日期,序列号等。根據安裝軟體的不同,它包括的資訊也不同。

  然而,一般來說,系統資料庫控制所有32位應用程式和驅動,控制的方法是基于使用者和計算機的,而不依賴于應用程式或驅動,每個系統資料庫的參數項控制了一個使用者的功能或者計算機功能。使用者功能可能包括了桌面外觀和使用者目錄。是以,計算機功能和安裝的硬體和軟體有關,對所有使用者來說項都是公用的。

  有些程式功能對使用者有影響,有些時作用于計算機而不是為個人設定的,同樣的,驅動可能是使用者指定的,但在很多時候,它們在計算機中是通用的。

  系統資料庫控制使用者模式的例子有:

  控制台功能;

  桌面外觀和圖示;

  網絡參數;

  浏覽器功能性和特征;

  那些功能中的某些是和使用者無關的,有些是針對使用者的。

  計算機相關控制項基于計算機名,和登陸使用者無關。控制類型的例子是安裝一個應用程式,不管是哪個使用者,程式的可用性和存取是不變的,然而,運作程式圖示依賴于網絡上登陸的使用者。網絡協定可用性和優先權基于計算機,但是目前連接配接和使用者資訊相關。

  這裡是在系統資料庫中基與計算機控制條目的一些例子:

  存取控制;

  登陸确認;

  檔案和列印機共享;

  網卡設定和協定;

  系統性能和虛拟記憶體設定;

  在系統中系統資料庫控制所有32位應用程式和它們的功能及多個應用程式的互動,比如複制和粘貼,它也控制所有的硬體和驅動程式。雖然多數可以通過控制台來安裝和設定,了解系統資料庫仍是做Winnt和Win95系統管理基本常識。

  1、HKEY :“根鍵”或“主鍵”,它的圖示與資料總管中檔案夾的圖示有點兒相像。Windows98将系統資料庫分為六個部分,并稱之為 HKEY_name,它意味着某一鍵的句柄。

  2、key(鍵):它包含了附加的檔案夾和一個或多個值。

  3、subkey(子鍵):在某一個鍵(父鍵)下面出現的鍵(子鍵)。

  4、branch(分支):代表一個特定的子鍵及其所包含的一切。一個分支可以從每個系統資料庫的頂端開始,但通常用以說明一個鍵和其所有内容。

  5、value entry(值項):帶有一個名稱和一個值的有序值。每個鍵都可包含任何數量的值項。每個值項均由三部分組成:名稱,資料類型,資料。

  6、 字元串(REG_SZ):顧名思義,一串ASCII碼字元。如“Hello World”,是一串文字或詞組。在系統資料庫中,字元串值一般用來表示檔案的描述、硬體的辨別等。通常它由字母和數字組成。系統資料庫總是在引号内顯示字元串。

  7、二進制(REG_BINARY):如 F03D990000BC ,是沒有長度限制的二進制數值,在系統資料庫編輯器中,二進制資料以十六進制的方式顯示出來。

  8、雙 字(REG_DWORD):從字面上了解應該是Double Word ,雙位元組值。由1-8個十六進制資料組成,我們可用以十六進制或十進制的方式來編輯。如 D1234567 。

  9、 Default(預設值):每一個鍵至少包括一個值項,稱為預設值(Default),它總是一個字串。

  系統資料庫是Windows程式員建造的一個複雜的資訊資料庫,它是多層次式的。在不同系統上系統資料庫的基本結構相同。其中的複雜資料會在不同方式上結合,進而産生出一個絕對唯一的系統資料庫。

  計算機配置和預設使用者設定的系統資料庫資料在Winnt中被儲存在下面這五個檔案中:

  DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM,NTUSER.DAT。

  Win95中所有系統注冊資訊儲存在windows目錄下的SYSTEM.DAT檔案裡。所有硬體設定和軟體資訊也儲存在這個檔案。它要比NT系統資料庫檔案簡單的多,因為這裡并不需要更多的控制。Win95被設計為一個網絡的客戶或者單獨工作的系統,是以使用者控制或者安全級别和NT不一樣。這使得Win95系統資料庫工作比NT更容易,是以這個檔案也比較小。

  Win95使用者的注冊資料一般被儲存在windows目錄下的user.dat裡。如果你在控制台|密碼|使用者配置檔案中建立并使用多于一個使用者的配置檔案,每個使用者就會有在\WINDOWS\Profiles\username\USER.DAT下它自己的user.dat檔案。在啟動時,系統将記錄你的登陸,從你目錄中的配置檔案(USER.DAT資訊)将被裝入,以用來保持你自己的桌面和圖示。

  在系統資料庫編輯器中系統資料庫項是用控制鍵來顯示或者編輯的。控制鍵使得找到和編輯資訊項組更容易。是以,系統資料庫使用這些條目。下面是六個控制鍵 (Windows NT以前的系統)

  HKEY_LOCAL_MACHINE

  HKEY_CLASSES_ROOT

  HKEY_CURRENT_CONFIG

  HKEY_DYN_DATA (基于Windows NT的系統沒有這一項)

  HKEY_USERS

  HKEY_CURRENT_USER

  Winnt和Win95的系統資料庫并不相容。從Win95向Winnt更新需要你重新安裝32位應用程式,重新在桌面上建立圖示,并重建立立使用者環境。

  通過控制鍵可以比較容易編輯系統資料庫。雖然它們顯示和編輯好像獨立的鍵,其實HKEY_CLASSES_ROOT 和HKEY_CURRENT_CONFIG是 HKEY_LOCAL_MACHINE的一部分。HKEY_CURRENT_USER是HKEY_USERS的一部分。

  HKEY_LOCAL_MACHINE包含了HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG的所有内容。每次計算機啟動時,HKEY_CURRENT_CONFIG和HKEY_CLASSES_ROOT的資訊被映射用以檢視和編輯。

  HKEY_CLASSES_ROOT其實就是HKEY_LOCAL_MACHINE\SOFTWARE\Classes,但是在HKEY_CLASSES_ROOT窗編輯相對來說顯得更容易和有條理。

  HKEY_USERS儲存着預設使用者資訊和目前登陸使用者資訊。當一個域成員計算機啟動并且一個使用者登陸,域控制器自動将資訊發送到HKEY_CURRENT_USER裡,而且HKEY_CURRENT_USER資訊被映射到系統記憶體中。其他使用者的資訊并不發送到系統,而是記錄在域控制器裡。

  鍵和子鍵

  資料被分割成多層次的鍵和子鍵,建立分層次(就象Exploer一樣)結構更易于編輯。每個鍵有成組的資訊而且根據在其中的資料類型被命名。每個鍵在它的檔案夾圖示上都有一個加号(+)标志子鍵說明在它下面還有更多内容的東西。當點開它的時候,檔案夾的加号标志被替換成一個減号(-)标志,然後顯示出下一級的子鍵。

  所有軟體,硬體,windows工作的設定都存放在HKEY_LOCAL_MACHINE。所有安全政策,使用者權限和共享資訊也包括在這個鍵中。使用者權限,安全政策,共享資訊可以通過Windows NT域使用者管理器,Explorer和Win95中控制台來設定。

  HKEY_CLASSES_ROOT (是HKLM\\Classes的映射)

  HKEY_CLASSES_ROOT包含了所有應用程式運作時必需的資訊:

  在檔案和應用程式之間所有的擴充名和關聯;

  所有的驅動程式名稱;

  類的ID數字(所要存取項的名字用數字來代替);

  DDE和OLE的資訊;

  用于應用程式和檔案的圖示;

  HKEY_CURRENT_CONFIG.

  HKEY_CURRENT_CONFIG是在HKEY_LOCAL_MACHINE中目前硬體配置資訊的映射。如果系統隻有一個配置檔案,也就是原始配置,資料将一直在同樣的地方。在控制台|系統|硬體配置檔案|建立一個額外的配置使額外配置資訊放入HKEY_LOCAL_MACHINE。當Win95中存在多個配置檔案時,當每次計算機啟動時将給出一個提示讓你選擇一個配置檔案。在Winnt中,在啟動時你可以按空格鍵來選擇上次正常啟動時硬體配置檔案。根據硬體配置檔案選擇的不同,特定的資訊被映射到HKEY_CURRENT_CONFIG。

  HKEY_DYN_DATA和其他的系統資料庫控制鍵不同,因為實際上它并不被寫入硬碟驅動器中。Win95的一個優點是,在系統啟動時HKEY_DYN_DATA這個控制鍵儲存收集到的即插即用資訊并配置它們。它儲存在記憶體中,Win95用它來控制硬體。因為是在記憶體中,是以它不從硬碟中讀取,每次當你啟動計算機時,配置都有可能會不一樣。在啟動時Win95必須計算超過1600種可能的配置。是以,如果系統改變既定的設定而沒有報告給Win95那麼潛在的問題就可能發生。系統大多數時間工作良好,但是并非一直如此。 在基于Windows NT的系統中取消了這一鍵值,而代之以HKLM\\HARDWARE,該鍵值在系統啟動時由系統掃描硬體配置而動态建立

  HKEY_USERS僅包含了預設使用者設定和登陸使用者的資訊。雖然它包含了所有獨立使用者的設定,但在使用者未登陸網絡時使用者的設定是不可用的。這些設定告訴系統哪些圖示會被使用,什麼組可用,哪個開始菜單可用,哪些顔色和字型可用,和控制台上什麼選項和設定可用。 在基于Windows NT的系統中,當使用者打開該根鍵時裡面包含如下内容:

  1. .DEFAULT (預設使用者配置檔案)

  2. S-1-5-18 (本地系統帳戶,NT AUTHORITY\\SYSTEM,所有使用者帳戶都由安全辨別符——SID表示,下同)

  3. S-1-5-19 (本地服務帳戶,NT AUTHORITY\\LocalService)

  4. S-1-5-19.Classes (本地服務帳戶的OLE資訊)

  5. S-1-5-20 (網絡服務帳戶,NT AUTHORITY\\NETWORK SERVICE)

  6. S-1-5-20.Classes (網絡服務帳戶的OLE資訊)

  7.目前登入使用者的SID

  8.目前登入使用者的SID.Classes

  七、八兩項可以通過HKCU直接進入

  用來儲存目前使用者和預設使用者的資訊,HKEY_CURRENT_USER僅映射目前登陸使用者的資訊。

  HKEY_LOCAL_MACHINE是一個顯示控制系統和軟體的處理鍵。HKLM鍵儲存着計算機的系統資訊。它包括網絡和硬體上所有的軟體設定。(比如檔案的位置,注冊和未注冊的狀态,版本号等等)這些設定和使用者無關,因為這些設定是針對使用這個系統的所有使用者的。

  HKEY_LOCAL_MACHINE\AppEvents

  為了以後在客戶機上運作客戶機/伺服器這樣的應用程式,在Win95/98中AppEvents鍵是空的。應用程式實際上都駐留網絡伺服器上,這些鍵會儲存部分指針。

  HKEY_LOCAL_MACHINE\Config

  這個鍵儲存着你計算機上所有不同的硬體設定(這些從控制台的系統屬性中硬體配置檔案中可以建立)。這些配置在啟動時通常被複制到HKCC。每個配置會被用一個鍵(比如0001或者0002等等)來儲存,每個都是一個獨立的配置。如果你隻有一個單一的配置,那就隻會有0001這個鍵

  HKEY_LOCAL_MACHINE\Config01\Display

  這個鍵表示顯示的設定,如熒屏字型,窗體大小,窗體位置和分辨率等

  一個小技巧:當設定了計算機不支援的大分辨率導緻Windows不能啟動時(黑屏),可以修改分辨率來解決。進入安全模式,運作regedit.exe,在這個鍵的Resolution鍵值中把資料值修改為640,480或者800,600這樣的低分辨率,然後重新啟動計算機即可。

  HKEY_LOCAL_MACHINE\Config01\System

  這個鍵儲存着系統裡列印機的資訊

  HKEY_LOCAL_MACHINE\Config01\System\CurrentControlSet\Control\Print\Printers

  在這個鍵下面,有一個鍵是為系統上每一個列印機設定的,通過控制台添加和删除列印機會調整這個清單

  HKEY_LOCAL_MACHINE\Enum

  Enum鍵包含啟動時發現的硬體裝置和那些既插即用卡的資訊。Win95使用總線列舉在啟動時通過不同的.ini檔案來檢測硬體資訊。那些在啟動時被安裝的和被檢測到的硬體會顯示在這裡。子鍵包括BIOS, ESDI, FLOP, HTREE, ISAPNP, Monitor, Network, Root, SCSI, 和 VIRTUAL。子鍵名表示它們各自的硬體裝置資訊。

  HKEY_LOCAL_MACHINE\Enum\BIOS

  BIOS鍵儲存着系統中所有即插即用裝置的資訊。它們用一套代碼數列出,包括每一個鍵的詳細說明,舉例,*pnp0400是并行口LPT1的鍵。如果LPT1并不具備即插即用功能,它就會别列入到Enum下的Root鍵中

  HKEY_LOCAL_MACHINE\Enum\Root

  Root鍵包括所有非即插即用裝置的資訊。在這裡,我們可以迅速斷定哪些裝置是即插即用,那些不是。比如SCSI擴充卡,這個裝置必須符合Win95中一個鍵名為ForcedConfig的硬體設定,這個不會改變。

  HKEY_LOCAL_MACHINE\Enum\Network

  win95的網絡功能在這個鍵有詳細說明,子鍵包括了每個已經安裝的主要的服務和協定。

  HKEY_LOCAL_MACHINE\HARDWARE

  hardware子鍵包括了兩個多層的子鍵:DE.ION鍵,它包含了中央處理器和一個浮點處理器的資訊。還有一個裝置映射鍵,它下面的串行鍵列出你所有的com端口。這個hardware鍵僅儲存超級終端程式的資訊,及數學處理器和串行口。

  HKEY_LOCAL_MACHINE\Network

  這個鍵僅儲存網絡登陸資訊。所有網絡服務細節都儲存在HKEY_LOCAL_MACHINE\Enum\Network這個鍵中。這個鍵有一個子鍵,logon,包括了lmlogon(本地機器登陸?0=false 1=true)的值,logonvalidated(必須登陸驗證),政策處理,主登陸方式(Windows登陸 ,微軟網絡客戶方式等),使用者名和使用者配置。

  HKEY_LOCAL_MACHINE\SECURITY

  security 有兩個子鍵,第一個是存取(它最終緻使一個遠端鍵列出網絡安全資源,存取權限等)和提供(包括列出網絡位址和位址伺服器),這個鍵被保留用在以後使用進階安全功能和NT相容性上

  HKEY_LOCAL_MACHINE\SOFTWARE

  這個鍵列出了所有已安裝的32位軟體和程式的.ini檔案。它包括了變化,依靠軟體安裝。那些程式的控制功能在這裡的子鍵中列出。多數子鍵簡單的列出了安裝軟體的版本号。

  我們在\Microsoft\Windows\Current Version下發現了一些有意思的設定,它有如下子鍵:

  1.App paths: 你曾經安裝過的所有32位軟體的位置。

  2.Applets, Compression, Controls Folder : 包括下控制台象顯示屬性那樣屬性條的附件。

  3.Detect, explorer :很多有意思的子鍵如Namespace keys of Desktop和My Computer----它們指出了資源回收筒和撥号網絡的CLSID行----和提示子鍵可以讓你建立自己的提示。

  4.Extensions : 一個擴充聯系的清單,目前相關聯的擴充名和比特定的執行檔案更适合的目标類型。

  5.Fonts, fontsize, FS Templates :系統屬性條中所選擇檔案系統模闆, 伺服器,桌面計算機或者筆記本電腦資訊。

  6.MS-DOS Emulation :包括一個應用程式相容子鍵 為大量過時的程式二進制鍵所設。

  7.MS-DOS Options :在dos模式下的設定,如himem.sys,cd-roms等。

  8.Network :網絡驅動的配置。

  9.Nls, Policies :系統管理者認為你不應該去做的事。

  10.ProfileList :所有可以登陸你計算機的使用者名清單。

  11.在Windows啟動時運作的程式的神秘之處是它們并不在開始菜單的啟動檔案夾中。它們在HKEY_LOCAL_MACHINE\Microsoft\Windows\CurrentVersion\下的子鍵中被執行。

  Run : 程式在啟動時運作

  RunOnce : windows初始化時程式在啟動時隻運作一次,這個經常用在當安裝軟體之後需要重新啟動系統的時候,是以這個鍵一般都是空的。

  RunServices : 它就象Run一樣,但是包含了“服務”,它不象一般的程式它們是比較重要的或者是“系統”程式。但是它們不是VXDs,就象McAfee或者RegServ工作一樣。

  RunServicesOnce : 它隻運作一次,但是是“系統自身”的安裝(大量的windows安裝參數:通常鍵值包括了系統目錄位置,和win95更新,可選項安裝元件,和windows啟動目錄的子鍵。

  注意:在很多黑客木馬軟體中,常常在這裡添加鍵值(一般是在Run中),這樣使得木馬軟體可以随着windows啟動而啟動并且很隐秘。在這裡可以檢視不正常的啟動項和去掉無用的運作程式(比如我就很不喜歡超級解霸的自動伺服器,在這裡可以去掉它)。

  12.SharedDLLs:共享DLL的清單,每一個都給出了在一個不可知系統的一個數字等級。

  13.Shell Extensions:列出了“被認可的”OLE注冊條,和相應的CLSID連接配接。

  14.ShellScrap :這個包含了一個PriorityCacheformats的子鍵,它包括了一個空的有限值,它更象過去SmartDrive指令行參數的派生。

  15.Time Zones : 主鍵值是你現在的時區;子鍵定義了是以可能的時區。

  16.Uninstall:這個儲存了程式在添加/删除程式對話框的顯示;子鍵包含了指向反安裝程式的路徑。和安裝向導相似.......)winlogon(包含了合法登陸布告的文本句)

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet

  這個子鍵包括裝置驅動和其他服務的描述和控制。不同于windows nt,win95隻包括限制驅動的控制設定資訊。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

  這個子鍵包括了win95控制台中的資訊。不要編輯這些資訊,因為一些小程式的改變在很多地方,一個丢失的項會使這個系統變的不穩定

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

  這個鍵包括了所有win95的标準服務。所有被添加的服務和裝置,每個标準的服務鍵包括了它的設定和辨認設定。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Arbitrators

  atbitrators鍵包括了當兩個裝置共同占用同樣的設定需要解決的資訊。四個子鍵包括了記憶體位址,沖突,DMA,I/O端口沖突和IRQ沖突。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class

  class鍵包括了所有win95支援的裝置classes控制,這些和你在添加新硬體出現的硬體組很類似,還包括了這些裝置如何安裝的資訊。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\inetaccs

  這個鍵包括了關于這個系統變化的ie附件的可用性,它僅在你安裝過ie2。0或者更高版本才出現。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSNP32

  msnp32描述了客戶機如何在microsoft網絡中實作功能,它包括了認證過程和認證者的資訊。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NWNP32

  nenp32鍵描述了windows客戶如何在netware網絡中工作功能,它包括了關于認證過程和證明者的資訊。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess

  在這個鍵裡包括需要遠端工作在win95系統上的資訊,有認證參數,主機資訊,和為了建立一個撥接上網工作的協定資訊。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP

  這個鍵包括了是以snmp(簡單網絡管理協定)的參數。它包括了允許的管理,配置陷阱,和有效的團體。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD

  vxd鍵包括了win95中所有32位虛拟裝置驅動資訊,win95自動管理它們,是以不必要用系統資料庫編輯器編輯它們,是以的靜态vxds用子鍵列出。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebPost

  webpost鍵包括了所有裝載的internet郵局的設定,如果你連接配接一個isp,并且它列出載這裡,你應該給自己選則一個伺服器。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock

  這個鍵列出了當連接配接到internet上winnsock檔案的資訊,如果列出了不正确的檔案,你将不會連接配接上internet。

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinTrust

  wintrust功能是檢查從Internet上下載下傳來的檔案是否有病毒,它可以確定你得到幹淨安全的檔案。

  在系統資料庫中HKEY_CLASSES_ROOT是系統中控制所有資料檔案的項。這個在Win95和Winnt中是相通的。HKEY_CLASSES_ROOT控制鍵包括了所有檔案擴充和所有和執行檔案相關的檔案。它同樣也決定了當一個檔案被輕按兩下時起反應的相關應用程式。

  HKEY_CLASSES_ROOT被用作程式員在安裝軟體時友善的發送資訊,在Win95和Winnt中,HKEY_CLASSES_ROOT和HKEY_LOCAL_MACHINE\Software\Classes是相同的。程式員在運作他們的啟動程式時不需要擔憂實際的位置,相反的,他們隻需要在HKEY_CLASSES_ROOT中加入資料就可以了。

  在Windows使用者圖形界面下,每件事----每個檔案,每個目錄,每個小程式,每個連接配接,每個驅動---都被看做一個對象;每個對象都有确定的屬性和它聯系。HKCR包含着對象類型和它們屬性的清單。HKCR主要的功能被設定為:

  一個對象類型和一個檔案擴充名關聯

  一個對象類型和一種圖示關聯

  一個對象類型和一個指令行動作的關聯

  定義對象類型相關菜單選項和定義每一個對象類型屬性選項

  在Win95中,相關菜單就是當你滑鼠右擊一個對象時所彈出的菜單;屬性就是當你選擇屬性項後一個展開的對話框。用簡單術語來說就是在改變HKCR中的設定可以改變一個給定檔案擴充名預設的關聯。改變一個檔案類型的預設圖示,和添加或者删除給定對象類型的彈出菜單内容(或者所有的對象類型)

  HKCR包括了三種基本類型的子鍵

  \??? 或者檔案擴充名子鍵

  檔案擴充名子鍵在彈出菜單上連接配接檔案擴充名到對象類型和相關操作,屬性項,和相關操作。

  \object 類型子鍵

  對象類型子鍵定義了一個對象類型在它預設圖示的項,它的彈出菜單和屬性項,它的相關操作和它的CLSID連接配接。

  \CLSID 子鍵

  在Windows下每件事都被用一個數字取代它的名字來對待。就象人往往是用名字來處理事情一樣。CLSID是辨別所有列出的圖示,應用程式,目錄,檔案類型等等對象的數字。是微軟為制造商配置設定的,每一個都必須是唯一的。制造商将CLSID放入安裝程式檔案這樣就可以在安裝時更新系統資料庫。

  系統資料庫是應用程式進行時它們需要關于做什麼的訓示的資料庫。比如說,假定你有一個微軟Excel 7電子資料表的Word 7文檔,當你在Word中輕按兩下這個電子資料表,應用程式菜單就會變成Excel的菜單而且電子資料表進入編輯狀态,就好像你在Excel中一樣。它是如何知道該做什麼呢?每個Excel 7建立的檔案都有Excel的CLSID連接配接。Word讀這個CLSID後,到系統資料庫中尋找訓示,依賴CLSID下的資料運作.DLL檔案或者應用程式。

  CLSID子鍵為對象類型提供了OLE和DDE資訊和圖示。相關菜單,或者包含在它子鍵中的屬性項資訊。這個可能是多數讓人看到後覺得“恐怖”的鍵。每個CLSID數必須是唯一的,實際上,為了這個目的微軟已經出産了CLSID-産生程式--這個結果導緻你往往得到32位16進制的數字串,除非你是程式員,否則多數部分鍵看起來是很枯燥的。它們包括記憶體管理模式,客戶機/伺服器配置,和OLE處理的.dll連接配接。

  1)shell:Shell鍵有個一”action“子鍵,如同”open“一樣,這裡有一個command子鍵;command子鍵有一個預設句值,它包含了運作程式的指令行。将一個”open“子鍵放在一個對象類型的shell子鍵中會在這個對象類型的彈出菜單上多出一個”open“選項,給這個open子鍵一個command(預設指令行"C:\Windows \Notepad.exe %1")子鍵會使得打開這個對象類型時使用筆記本做為預設應用程式。其他操作選項包括View,Print,Copy,Virus,Scan等等。

  2)shellex:Shellex鍵有一個子鍵。它們包含的每一個子鍵指向一個為對象類型執行OLE和DDE功能的CLSID項(比如說快速檢視,一個菜單處理子鍵下指向一個有句值的CLSID鍵列出了包含了檔案浏覽功能的.dll檔案)

  3)shellnew:ShellNew包含了一個“command”句,它包含了一個打開對象類型“新”檔案的指令行。

  4)DefaultIcon:DefaultIcon子鍵包含了一個“default”句,它包括了一個指向圖示的指令行(比如說,"C:\Windows \System \shell32.dll,2" 2就是從0數的第三個圖示,記住,是在Shell32.dll中的)

  除了和它們擴充名關聯擴充名和檔案類型以外,它們在HKEY_CLASSES_ROOT還有很多項。所有它們的項也都适用于nt,如界面和應用程式的執行。通常你将編輯僅僅一小部分這樣的項。除了彈出菜單提示以外,所有包含在這裡的項隻會在安裝應用程式,在程式中設定調整或者創造關聯時被改變。

  沒有HKEY_CLASSES_ROOT你是不能啟動系統的;你手工編輯它真的是很困難。HKEY_CLASSES_ROOT是你需要注冊标一個很重要的原因:應用程式的控制和操作這個系統。看到它的尺寸和這個處理鍵的複雜程度,SYSTEM.INI 和 WIN.INI不再夠用也是不用驚奇的。

  win95一般隻使用一個硬體配置檔案。如果有多個硬體配置檔案。HKEY_LOCAL_MACHINE\Config中就會添加一個鍵。HKEY_LOCAL_MACHINE\Config包含了HKEY_LOCAL_MACHINE中相同的資料

  在啟動時,你可以選擇你願意使用的配置檔案。如果有多個安裝,每次系統重新啟動時,你就必須選擇.HKEY_CURRENT_CONFIG是在啟動時控制目前硬體配置的鍵

  在系統啟動以後,任何地方的變化都會自動影響到它。程式員經常使用HKEY_CURRENT_CONFIG友善的來存取配置資訊。

  HKEY_CURRENT_CONFIG包括了系統中現有的所有配置檔案的細節。你的選擇影響了哪一個硬體配置檔案成為現在的。舉例來說,如果配置0002被選擇了,所有0002的配置資訊會被映射到這些鍵上

  HKEY_CURRENT_CONFIG允許軟體和裝置驅動程式員很友善的更新系統資料庫,而不涉及到多個配置檔案資訊。 HKEY_LOCAL_MACHINE中同樣的資料和任何系統資料庫的變化都會同時的變化。

  HKEY_DYN_DATA

  在HKEY_DYN_DATA鍵中所有資訊都是在啟動時被寫入的。它再現了Win95在系統中控制硬體所使用的動态資料。它僅隻有三個鍵。它們保留了系統目前狀态監視所需要的很簡單的資訊

  在HKEY_DYN_DATA中除了暫時檔案,沒有任何資料被寫入硬碟。在系統每次重新啟動時所有的資料被重新寫入。另外,在既插即用的情況下,當裝置改變狀态時一些資料可能會寫入。(比如說系統運作時在一個PCMCIA槽中插入一塊網卡)

  Config Manager

  配置管理包括了在Win95中每個安裝裝置啟動時的資訊。在啟動時它從HKEY_CURRENT_CONFIG中獲得它的清單并且檢查每個項。如果找到一個沒有在清單中列出的裝置,它向系統報告這些資訊來安裝。如果清單中的一個裝置不在系統中,它就會在這個鍵值中顯示這個情況。

  Enum

  系統中已安裝的每個裝置的啟動狀态都在這個鍵中被列出。如果某個裝置沒準備好,它就在這裡顯示出來。如果它準備好了,它也會顯示出來。每個裝置指針也被列出顯示哪個注冊這個裝置用來做它的控制

  PerfStats

  系統中所有裝置的性能特征儲存在這個鍵。它是十分難讀的,但是通過系統螢幕就十分容易看懂

  Security

  這個鍵顯示了登陸在這台機器和網絡上的登陸使用者從哪個證明者得到有效的證明

  HKEY_USERS将預設使用者和目前登陸使用者的資訊輸入到系統資料庫編輯器,在win95中,它僅被那些配置檔案激活的登陸使用者使用,同樣在nt下,它也是這樣。

  win95從user.dat中取得他們的資訊,winnt從ntuser.dat中取得資訊。.dat檔案包含了所有基于使用者的系統資料庫設定并且允許你取配置這些使用者的環境。如果你改變了預設使用者的設定,所有新使用者會繼承同樣的設定。而且,那些已經被建立的使用者變的失效。

  HKEY_USERS\.DEFAULT

  這個鍵的設定被用于所有新使用者,使用者們的配置檔案從這個配置檔案中建立。它包括所有的環境,螢幕,聲音,和其他使用者相關的功能。

  HKEY_USERS\.DEFAULT\AppEvents

  這個鍵列出了事件響應,描述,和各種系統功能的聲音

  HKEY_USERS\.DEFAULT\AppEvents\Schemes

  預設和目前的聲音方案在這個鍵和它的子鍵中列出。在事件的時間中系統播發這些聲音

  HKEY_USERS\.DEFAULT\Console

  這個鍵儲存了MS-DOS視窗的選項、布局、熒屏顔色和字型設定。

  HKEY_USERS\.DEFAULT\Control Panel

  所有在控制台裡配置設定的資訊全儲存在這個鍵和它的子鍵中

  HKEY_USERS\.DEFAULT\Control Panel\Accessibility

  這個鍵儲存了所有在控制台中輔助功能的設定。

  HKEY_USERS\.DEFAULT\Control Panel\Appearance

  這個鍵儲存了所有在控制台裡顯示外觀的設定

  HKEY_USERS\.DEFAULT\Control Panel\Appearance\Schemes

  這個鍵列出了預設可用的方案,和每個方案包括的顔色和字型。

  HKEY_USERS\.DEFAULT\Control Panel\Colors

  這個鍵儲存了Windows每個預設顔色的設定。每個值(顔色名)像一個RGB(紅、綠、藍)值列出來。比如說,黑色是0 0 0,意思就是紅色值是0,綠色值是0,藍色值也是0。相反的白色就是255 255 255。其他的顔色都是RGB值合成的。

  HKEY_USERS\.DEFAULT\Control Panel\Sound

  這個鍵決定了在錯誤時系統是否發出響聲

  HKEY_USERS\.DEFAULT\Environment

  這個鍵儲存了環境設定,特定的臨時性檔案的位置

  HKEY_USERS\.DEFAULT\Keyboard Layout

  鍵盤布局設定被設定成标準美國英國标準傳統鍵盤布局。如果你選擇了其他的布局,那麼數字清單會不同

  HKEY_USERS\.DEFAULT\Software

  軟體的安裝設定被儲存在這個鍵中,預設使用者隻有微軟程式的設定

  HKEY_USERS\.DEFAULT\Software\Microsoft

  微軟的應用程式的相關設定被放在這個鍵裡。如果其他微軟程式被安裝,它們就更新這個使用者的微軟鍵。在下面的項目顯示了預設的控制

  HKEY_USERS\.DEFAULT\Software\Microsoft\Windows

  這個鍵儲存了隻和windows有聯系,和windows nt沒關系的設定,這些設定在win95中是相同的,使用同樣的驅動和功能

  HKEY_USERS\.DEFAULT\Software\Microsoft\Windows NT

  基于nt 功能的設定在這個鍵中。windows nt沒有這些設定就不能夠運作,它建立環境和網絡上的程序,使用者權限,列印機,字型等等

  HKEY_USERS\.DEFAULT\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

  這個設定控制了windows nt的登陸功能

  HKEY_USERS\.DEFAULT\UNICODE Program Groups

  預設unicode程式組隻是在使用程式管理器時被使用,explorer并不使用它們

  S-1-5-21-1658001358-1336221227-1912232085-500 (SID)

  HKEY_USERS\S-1-5-21-1658001358-1336221227-1912232085-500

  這個是目前登陸使用者的sid,每一個網絡上的使用者都被域使用者管理器配置設定了一個sid,每一個sid都是唯一的,是以它依賴與登陸使用者,這個資訊改變。它是從使用者配置檔案的ntuser.dat檔案調出的。一般來說,它的子鍵很多,是基與安裝的軟體的,選擇的和最終設定

  HKEY_USERS\SID\Network

  這個鍵顯示了所有連接配接到其他系統的映射。舉例來說,如果你映射驅動器H: 到\server1\docs,它會作為一個子鍵顯示出來

  HKEY_USERS\SID\Printers

  這個鍵顯示了所有安裝的,共享的和連接配接的列印機

  HKEY_USERS\SID\Software

  這個鍵為單獨的使用者擴充,基于為使用者或者被使用者安裝的其他軟體。

  HKEY_USERS儲存了所有目前登陸使用者和預設使用者的設定。登陸使用者的改變就如同不同使用者使用這個系統,sid是使用者資訊的表現。使用程式重新找到任何使用者的ntuser.dat檔案并且把他放如到系統資料庫中觀看和編輯。

  HKEY_CURRENT_USER包含着在HKEY_USERS安全辨識裡列出的同樣資訊。任何在HKEY_CURRENT_USER裡的改動也都會立即HKEY_USERS改動。相反也是這樣。

  HKEY_CURRENT_USER允許程式員和開發者易于存取目前登陸使用者的設定。通過建立這個鍵,微軟很容易在不涉及到使用者的SID下改變,添加和設定。

  也就是說,所有目前的操作改變隻是針對目前使用者而改變,并不影響其他使用者。

  首先出場的是Win98/Me,因為Win98和WinMe沒有大的差別,是以這裡放在一起講述。在Win98/Me裡面的系統資料庫編輯器隻有一種,就是最"原始"的那一種。之是以說他原始是因為他沒有任何安全限制,也就是說它的系統資料庫編輯器可以被任意一個使用者打開,并沒有任何權限限制。這主要是因為Win98/Me的使用對象是一般的單機使用者,不需要限制權限,這一點和NT/2000/XP有很大的不同。打開的方法:

  1.最簡單的方法:開始--運作中輸入regedit就可以了。

  2.另外一種方法:在Windows目錄下找到regedit.exe,直接輕按兩下也可以打開。 随後是Win2000/XP出場。因為2000/XP在設計時加上了權限這一概念,是以在這2個系統裡面有2種方法可以打開系統資料庫編輯器。一種是直接在開始--運作中輸入regedit,出現的界面和98/Me一樣。這裡就不詳細說明了。另外一種打開方式是本文的重點内容----有權限限制的系統資料庫編輯器(打開方法:開始----運作中輸入regedt32)。如圖所示(這裡是WinXP的截圖,Win2000下的截圖和WinXP是一樣的)。

  當你選中一個鍵值的時候,編輯下拉菜單下就可以看到一個選項----權限,用滑鼠單擊這個選項以後會出現圖2的視窗。用滑鼠分别單擊各個使用者組就可以看到不同的權限限制,如果你覺得某一個使用者組的權利太高了,就可以在下方修改權限(注意:必須賦予Administrators組使用者完全權限,否則一旦你或相應的軟體、驅動程式要修改系統資料庫,但是由于所有的組使用者都沒有權限修改,是以你将不能夠成功安裝。是以必須把完全權限賦予Administrators組使用者(系統預設)。圖3是Administrators組使用者所擁有的權限。

  系統資料庫可能出現的問題。

  如果系統資料庫受到嚴重的損害,存取硬體和軟體可能會受到很大的限制,甚至系統不能啟動。可能因為一個很小的問題,一個應用程式将不能正常的運作,或者運作的不穩定。

  當系統資料庫在運作時是受保護的,是以它不可能被複制,删除,或者改變内容,除非經過一個“驗證過的”程式(比如安裝程式,系統資料庫編輯工具,和域使用者管理器改變安全政策和浏覽器等)。由于這些保護,系統資料庫是十分安全的,但是并不是完全能防止的。問題仍會發生,你需要作好認識它們的準備來應付這些問題。

  當你系統資料庫出現問題時,我們大多數會聽到或者感覺到下面一些症狀來認識問題,系統資料庫問題的特征有:

  昨天計算機(或者軟體程式)還工作,但是今天它就不工作了;

  在我安裝軟體/硬體前它還工作,但是現在我無法使用它了;

  我的系統不象以前那樣工作了;

  當我試圖關閉計算機時,硬碟響個不停卻沒有什麼反應;

  我的計算機啟動不了了;

  天!又是藍屏,當機了;

  系統資料庫變的不正常一般來說有三種原因:

  <b>1、應用程式和驅動被添加到系統中</b>

  1)在系統資料庫中找出大半的錯誤與添加和删除程式有關。多數使用者自己添加或者更新驅動,應用程式等等。而且添加和删除都是多次的。

  2)程式本身也有問題。沒有任何應用程式沒有bug或者錯誤。最好的情況,就是錯誤微乎其微,複雜深奧的問題你可能從來沒見過。在設計程式時因為受時間和經費的限制,這些錯誤被放置不管。作為一個程式員來講,在程式裡有錯誤可能是次要的,但是它使系統崩潰那就變成一個大問題了。

  3)驅動程式不相容。個人計算機世界的開放結構體系造成了一定的風險,因為任何類型的部件組合在一起都是可能的。但測試所有的組合并保證所有裝置的相容性卻不太可能。是以當用在Win95下的驅動被用在Winnt時,某些問題就會産生。

  4)在應用程式安裝過程中在系統資料庫中添加了不正确的項。在安裝時,多數應用程式使用叫一個叫SETUP.INF的檔案詳細說明例如需要什麼磁盤,哪個目錄将被建立,從哪裡複制檔案,使應用程式工作正常所需要建立的系統資料庫項等等詳細資訊。如果在SETUP.INF中有一個錯誤,這個改變也仍然會出現,就會出現嚴重的問題。

  5)一個應用程式導緻另一個應用程式和它預設的檔案關聯出現錯誤。當一個應用程式被安裝後,預設檔案類型被記錄在系統資料庫中。然後使用者可以通過輕按兩下來啟動應用程式和裝載檔案。很多時候,其他應用程式也會使用同樣的擴充名。舉例說,當一個TIF圖形在基于系統資料庫裡的設定被激活時,最後一次裝載的程式将會變成一個執行體。有時候,徹底不相同和根本不相容的程式會在它們自己的文檔檔案中使用相同的檔案擴充名,啟動文檔的快捷方式将不會工作。在使用者操作過程中,如果在檔案打開方式選擇了不正确的程式,就會造成一定的問題。

  6)在反安裝時出現的錯誤。當你在控制台裡的添加/删除程式種删除程式時,通過應用程式自身的反安裝特征,或者通過第三方軟體,這可能會對系統資料庫造成損壞。除此之外,删除程式,輔助檔案,資料檔案和反安裝程式可能會試圖移去系統資料庫的參數項。因為系統不可能知道一個應用程式在系統資料庫中所要存取的相關參數項,這将會不經意的移除掉其他應用程式的參數項。

  7)字型的錯誤。當系統資料庫中字型ID出錯,你将在應用程式中看到一種不同的字型。這就讓人感覺很讨厭并可能需要你移去部分或全部字型并取代它們。這經常發生在使用者頻繁安裝和删除字型的時候。

  <b>2、硬體設定改變或者硬體失敗</b>

  1)如果計算機系統自身有問題,系統資料庫會有損害。通常的,這些錯誤可以在正确的系統維護和管理下避免。

  2)病毒問題。病毒很隐秘的改變正常的檔案和系統資料庫中的部分内容來影響我們的系統。

  3)計算機用電如果不正常也會影響計算機系統,用UPS可以避免。

  4)磁盤問題。很多時候你會因為容量不夠使硬體失敗而換掉你的硬碟。如果整塊硬碟失敗,當然,你将不得不從備份中恢複你的系統資料庫。其他的則是磁盤獨立扇區或者簇的故障。雖然這些情況在今天的系統不可能發生,但是磁盤表面媒體的故障會使得磁盤部分不可讀,包括那些系統資料庫檔案位置。

  <b>3、使用者改動了系統資料庫</b>

  1)手工改變系統資料庫。當人們手工編輯系統資料庫,由于資料的複雜性和難懂性使得他們難免容易犯錯誤,而且這個錯誤可能很嚴重導緻系統工作發生中斷。

  2)拷貝其他系統資料庫是很多使用者犯的一個嚴重錯誤。因為從其他機器上拷貝來的系統資料庫檔案并不意味着也會在這一個機器上工作正常。對單獨的系統來說系統資料庫都是特殊的。甚至計算機硬體裝置相同,拷貝來的系統資料庫在另一個系統上不見得就會工作。如果使用另一個系統的系統資料庫,多數硬體裝置将不會工作,使用者和安全問題可能造成資料和應用程式資訊無法使用。 

  <b>保護Windows系統資料庫</b>

  保護系統資料庫是很重要的,有很多不同的工具可以實作這一目的。當沒有安全設定時,使用者可能的錯誤會更多。幸運的是,他們可以有幾中方法來保護Windows系統資料庫,在系統資料庫失敗時他們可以用額外的拷貝來恢複系統資料庫。下面就是其中的一些方法:

  1、使用windows備份軟體

  注:Win95和Win98備份程式有部分差別,在這裡隻講Win98的備份程式。

  Win98中包括一個備份程式。當安裝Win98時如果你選擇“自定義安裝”,或者你可以在控制台中的添加/删除程式裡安裝它。當你安裝了這個備份程式,從 開始菜單| 程式| 附件 |系統工具 |備份 可以運作它。啟動時,這個程式提示你是否建立一個新備份,打開現有的備份作業,或者是還原備份檔案 。

  如果選擇建立備份,則會有一個備份向導提示你如何去做備份。

  如果選擇取消向導,那麼可以自己手工設定要備份的内容。在備份内容裡可以備份網絡和本地驅動器的檔案。可以在你想備份磁盤或者檔案的選擇框打上對号來做備份工作。然後在備份在何處裡填上你做備份的目的位置既可。如果要連同windows系統資料庫一起備份,那麼在 作業|選項|進階 裡,在“備份windows系統資料庫”選擇框打對号就可以了。恢複則是備份的逆過程,這裡就不詳述了。

  2、在安全模式下複制系統資料庫檔案

  當Win95運作時,系統資料庫檔案被鎖定,隻能用系統資料庫編輯器或者系統自己來進行存取,這些檔案不能夠被複制到其他地方。如果你在安全模式下啟動Win95,系統資料庫就不會使用同樣的方法載入,這樣SYSTEM.DAT 和 USER.DAT就可以被複制。實際上安全模式下系統檔案是受保護的。

  在啟動時,當計算機顯示Starting Windows 95...時按F8鍵進入安全模式。改變SYSTEM.DAT 和 USER.DAT的隐藏和隻讀屬性這樣就可以看到和複制它們。當拷貝完系統資料庫檔案,不要忘記了改回它們隻讀和隐藏屬性。

  3、使用微軟配置備份來備份你的系統資料庫檔案

  CFGBACK.EXE是Win95(Win98中沒有這個軟體)所附帶的備份軟體。它在Win95CD-ROM上的\Other\Misc\CFGBACK這個目錄。在系統上拷貝所有的檔案到任何一個目錄,然後在桌面上建立一個CFGBACK.EXE的快捷方式。

  要做一個系統資料庫的備份,啟動CFGBACK然後在選擇的備份名位置輸入一個名字然後點備份繼續。

  注意:在使用CFGBACK前确定你已經關掉了所有運作的程式。如果有程式在運作,CFGBACK可能将使得系統崩潰,資料丢失,而且儲存的是一個不完整的備份。

  4、導出系統資料庫

  在我看來,如果你沒有錄音帶機或者其他東西。在REGEDIT.EXE中導出選項有一個導出為文本檔案。通常使用一個壓縮工具,導出工具選項也可以被用做儲存和保護系統資料庫的方法。

  要導出在系統資料庫中的任意鍵,選中這個鍵然後選擇 注冊|導出系統資料庫檔案。這将會複制這個鍵,并提示你在那裡存放這個鍵及它的名字,然後用一個擴充名為.REG的檔案儲存這些資料。

  當我們用文本格式導出系統資料庫。我們可以使用象pkzip或者其他壓縮工具壓縮它(可以在正常Dos模式運作的)來節省空間。

  為了備份我們可以在windows目錄下建立一個用來做備份的檔案夾。最少在一個月我們應該進行定期的備份。因為許多計算機使用者訂閱或購買帶有贈送CD的計算機雜志。這些CD上有大量的時間限制的共享軟體。許多使用者從其中安裝一個或者多個程式。當軟體過期時它們反安裝這些程式,但是這些程式在系統資料庫中留下了一些痕迹。頻繁的添加/删除程式會影響系統資料庫,但是有了備份相對來說我們就比較安全了。

  我們必須重新啟動計算機到DOS模式下來導入,假定你導出你的系統資料庫為mar99.reg.現在在指令提示下打

  REGEDIT /C MAR99.REG

  系統資料庫編輯器将mar99.reg中的資料導入你的系統資料庫并儲存。不過隻在指令提示下這個全部導入的工作才比較可靠。

  技巧:如果你的系統資料庫不斷的變的龐大,那麼先導出它然後象上面那樣再逐個導入它。在這個導入導出過程中系統資料庫中不必要的項将被清除出去。如果你使用Win98那麼你可以使用Scanreg.exe程式。在windows目錄指令提示下打 Scanreg /fix來執行指令。

  請記住,預防要比修複好的多。系統資料庫太容易被改變了,在發生突然事件時有幾個系統資料庫的備份是解決問題最好的方法。

  從系統資料庫故障中恢複

  這裡有四種不同級别的方法可以從Windows系統資料庫故障中恢複

  Restart

  Redetect

  Restore

  Reinstall

  讓我們來看每一個方法來斷定來使用它最适合的時間,并且解決何種類型的問題。

  Restart(重新啟動)

  Win95系統資料庫大部分内容儲存在RAM中。如果哪個資訊受損,它就必須重新讀取正确的資訊。當你重新啟動系統,系統資料庫将資料從硬碟讀到RAM中就可以使用了。

  拿字型ID問題來說。每種字型在系統中用一個ID号來使用。當一個字型被用在一個文檔時,這個字型被這個數字儲存并且用一個名字來辨別。當字型ID損壞那麼字型顯示和列印将被其他字型取代。重新啟動系統從硬碟上重新整理資料,将産生修複過的字型ID,這樣字型顯示和列印就變的正常了。

  這也就是為什麼Windows系統故障經常在重新啟動後就又恢複正常的一個原因。

  Redetect the Devices(重新檢測硬體)

  如果一個裝置工作不正常,那麼在系統資料庫中控制裝置的設定可能受損了。為了重新設定系統資料庫,你應該删除并且重裝裝置的驅動,或者你應該讓Win95重新檢測它們。很多時候,當一個裝置工作不正常,它們會在裝置管理器上此裝置前使用一個驚歎号标志顯示出來。很明顯,如果裝置從來不工作,可能就是其他問題了。但是如果裝置以前工作,現在出問題,系統資料庫就需要被恢複。

  要檢測一個裝置,在控制台上選擇添加新硬體。第一個問題是文你“需要Windows搜尋新硬體嗎?”如果你選擇是,Win95将做一個徹底的搜尋去找“新”裝置。任何設定不正确的或者沒找到驅動的裝置将被檢測到并顯示出來。

  Restore(恢複)

  從CFGBACK中恢複系統資料庫

  從CFGBACK中恢複系統資料庫有很多好處。如果你建立了幾個備份,你可以選擇正确的一個來恢複。你可以如同做手術般放置排列系統資料庫參數項。

  導入系統資料庫檔案

  象前面章節講述的那樣,一個代替使用備份的方法就是導入一個.REG檔案。.REG檔案包括了目的資料位置,是以對這個檔案簡單的輕按兩下就可以将資料放入系統資料庫。它是所有恢複程式中最簡單的,但是也可能造成錯誤。錯誤不會是用REGEDIT.EXE把資料寫入錯誤的位置,它很可能出現在使用者直接輕按兩下系統資料庫檔案的時候。

  Reinstall(重新安裝)

  重新安裝

  最後的方法就是重新安裝驅動、應用程式或者Win95。一般來說,它隻花費你一個小時左右時間去做這些事。如果你在現有的檔案上重新安裝,很多配置資訊還被安裝在同樣的地方。同樣在安裝驅動程式時,你應該重新加入配置資料。

  實際上找出原因并修複它所花費的時間比重新安裝還要多,這就是為什麼重新安裝在技術支援上是一個相當普通的“解決方法”。關鍵的問題在于,“你是否想找出是什麼錯誤,或者你是否隻想讓它工作正常?”答案取決于問這個問題的使用者情況,發生問題的頻繁次數和重新安裝的軟體的實用性。

  當Windows第一次被安裝時它将在啟動目錄的根目錄上建立一個名為SYSTEM.1ST的檔案。這是Windows第一次啟動時建立的個簡單的system.dat檔案。你所應該做的就是将這個檔案放到windows目錄(在dos模式下)并将它的名字改為SYSTEM.DAT。然後重新啟動。然後你就可以得到安裝時第一次啟動的windows。

  因為很多.INI,.DLL和其他檔案的改變,這種方法的成功機率大概隻超過50%。比如當裝IE4.0後系統和系統資料庫将有一個徹底的改變。我們的system.1st檔案雖然包含了一個Dll檔案的參考,但它可能更新或者改變版本号。

  這裡就是幾個在系統資料庫出故障的時候恢複它的工具和方法。你的資料可能會安全恢複,但是不管你用什麼方法,除了重新格式化硬碟,最好的方法就是做好系統系統資料庫的備份工作。

修改系統資料庫或組政策,禁止運作指定程式

對于windows 專業版,可以在組政策裡面操作,禁止運作指定的程式:

運作gpedit.msc ,啟動組政策,打開“使用者配置”→“管理模闆”→“系統”;

點選“系統”目錄,在右邊視窗中找到“不要運作指定的windwos應用程式”,輕按兩下打開,進入“不要運作指定的windwos應用程式 屬性”視窗;

選中“已啟用”,再點選“顯示”按鈕,進入“顯示内容”視窗,點選“添加”按鈕;

在“添加項目”視窗中,輸入應用程式的準确名稱:如 QQ.EXE 等等。确定,傳回“組政策”主界面。或這再次點選“添加”按鈕,添加下一個程式。

如果是Home家庭版,沒有組政策,需要在系統資料庫裡面操作,方法如下:

系統資料庫裡面,相關的鍵項是

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\DisallowRun

如果沒有這個鍵項,就手動添加這個鍵項。

在右邊視窗建立字元串值,數值為準備禁止的程式名稱。

或者,把以下内容修改一下,就是把"1"="xxxxx.exe" 裡面的xxxxx修改成需要禁止的程式名,比如,如果要禁用QQ程式,就設定為:

"1"="QQ.exe" 等;

如果要繼續禁用其他程式,比如,還要禁用QQ遊戲程式,在"1"="QQ.exe" 下添加一行,把1改為2 ……,把QQ.exe改成其他程式,如下例所示:

"2"="QQGame.exe"

然後,把以下藍色文字内容拷貝到記事本裡面,另存為DisallowRun.reg檔案(或者先儲存為DisallowRun.txt檔案,然後修改字尾.txt為.reg 。

在檔案夾選項,檢視 裡面,把“隐藏已知檔案類型的擴充名”取消,才可以修改字尾),注意,其中的xxxxx表示需要禁止的程式的名字,然後,輕按兩下這個DisallowRun.reg檔案導入系統資料庫 即可生效,QQ或QQ遊戲就無法打開了:

Windows Registry Editor Version 5.00

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

"1"="xxxxx.exe"

聲明:

本文的目的是講述用組政策或系統資料庫禁止運作指定的程式的方法;

裡面的舉例,禁用QQ程式或QQ遊戲,隻是一個例子;

如果你們機關的網管學會了這種方法,讓你們不能使用QQ程式了,不能怪我!

如果你想禁用其他程式,卻一字不差照搬了我的例子,結果把QQ禁用了,也不能怪我!

如果自己有基本的動手能力,打開系統資料庫,搜尋DisallowRun ,找到後,删除右邊視窗被禁用的程式就可以了。注意多搜尋幾次。

繼續閱讀