2017年6月12日 星期一

登錄檔(registry)簡介

登錄檔(registry)簡介
Windows控制台中,我們可以更改許多 電腦的設定,這些Windows的設定都記載在「Registry登錄檔」之中 ,我們可以透過修改登錄檔的數值,來 達到修改Windows功能的目的,而修改登錄檔的工具,就叫做「登錄編輯程式」,我們可以利用開始功能 表的執行選項 ,輸入「regedit」來呼叫出這個登錄編輯程式。
「登錄編輯程式」的介面長的很像「檔案總管」,別以為有什麼特殊的機關或是設定,其實就是Windows 不為人知的檔案管理員,它依照Windows的需求來分門別類擺放各類的設定,讓Windows依照這些設定 來運作。所以人家說修改登錄檔不難,只是要記得的位置,實在有點麻煩就是了  
而「登錄編輯程式」這個Windows私密空間的檔案管理員,把目錄稱為「機碼」,在「我的電腦」中一 共有五大目錄,也就是五大機碼,一個一個點來看,可以看到分門別類擺放相當整齊。而在機碼內可沒 有什麼文字檔、影像檔或是私藏的好康影片,只有三種「數值」檔案,包括「字串值」、「二進位值」、「 DWORD值」,以及這三類檔案的變形「多字串值」、「可擴充字串值」,而這些檔案則分別記載著各項 系統的不同設定值。
若要修改它說起來也不難,只要找到相對應功能的「目錄」底下的「檔案」,點個兩下修改數值就可以 了。不過微軟會把這些設定藏起來,也不是沒有原因的,由於所有系統的設定都記載在登錄檔中,因此 除非你確定某一個「目錄」的某個「檔案」的功能,否則就別亂改一通,否則搞亂了系統鬧到要重灌可 就越改越忙了
開啟登錄編輯程式後,在左邊窗格可以看到幾個如同資料夾一般的圖示,且名稱都有點複雜,按下「+」 符號後,還可以進一步展開其內容。我們可以發現整個登錄檔的內容主要是由「機碼」與「登錄值」所 構成的,位於左邊窗格如同資料夾圖示一般的就是「機碼」,而在右邊窗格中一列一列的項目 我們就稱 它為「登錄值」,上方為功能表,下方為狀態列,下面就針對「登錄編輯程式」各功能做解說。
‧功能表:regedit登錄編輯程式的功能表,介面相當簡單易用,沒有什麼複雜的功能。
機碼區左邊類似目錄的欄位,就是記載機碼的地力,機碼原文Key,它的圖示和檔案總管中的資料夾 是一樣的,不僅如此,它在登錄檔中的定位和資料夾也頗類似的,而在每個機碼下的其他機碼,我們稱 它為「子機碼」(SubKey)
數值區在右邊則是數值區,記載著各種不同的登錄值,如果說機碼類似資料夾,那登錄值就是儲存 在資料夾裡的檔案,每個登錄值都具有名稱、類型,資料等欄目,這是我們實際要修改的數值資料,我 們也可以直接按下滑鼠右鍵新增登錄值資料。
‧狀態列:可以顯示目前regedit登錄編輯程式的位置,在「深入」複雜的機碼目錄後,這個狀態列相當好用。
  • 登錄檔五大機碼說明:
初次開啟登錄編輯程式時,在左邊窗格我的電腦之下,會有 5個以「HKEY」開頭的機碼,我們把它們稱 為「RootKey」。這 5個機碼位居所有機碼的最上層位置,分別存放著不同類別的系統資訊,詳細說明如下。
HKEY_CLASSES_ROOT:HKEY_CLASSES_ROOT機碼中,記載著各種副檔名檔案類型,如「.doc」 的檔案,就被定義有文字檔,並且記錄將用何應用程式,來開啟此一類檔案,當下次再開這類檔案時 ,就會直接用相對應程式來開啟。
‧HKEY_CURRENT_USER:HKEY_CURRENT_USER機碼,則是從HKEY-USERS衍伸出來的設定, 記載著目前使用者的資料,以及對作業系統的設定值。也包含個人化作業環境的設定資料,因此許多 設定都會落在這個「目錄」中。
‧HKEY_LOCAL_MACHINE:HKEY_LOCAL_MACHlNE機碼,記載系統中各種硬體設定的資料。包括 BIOS,硬體周邊、印表機、光碟機等等的硬體相關資料設定。
‧HKEY_USERS:HKEY_USERS機碼記載著各種使用者的設定資料。HKEY_CURRENT_USER為HKEY_USERS的子機碼。
‧HKEY_CURRENT_CONFIG:HKEY_CURRENT_CONFlG機碼是記載目前使用者對於硬體的設定檔, 也就是個別使用者在HKEY_LOCAL_MACHlNE機碼中對應的設定數值
  • 登錄檔三大數值說明:
登錄檔中的登錄值類型共有15種之多,不過實際可能用到的類別只有5種,也就是在登錄編輯程式右邊窗 格空白處按右鈕並執行新增命令後,可以增加的5種登錄值:
‧字串值:用來儲存字串資料,字串包括字、整數、小數點及負數。字串值儲存雖然方便,但是處理 的轉譯過程較花資源、速度較慢。
‧二進位值:用二進位元值儲存資料,如「00 01 00 05…」。較不易看出所儲存資料的內容。
‧DWORD值:可以是十進位或十六進位來編輯,但不能是負數,如叫「#3333FF(16)」,括弧裡表示十 六進位,用來表示「顏色」是最常用的DWORD值,可以用來儲存較為複雜的數值資料。
NOTE:在登錄編輯程式中,你可以看到機碼、登錄值名稱的英文字母有大寫也有小寫,這是否意味在登 錄檔中,大小寫英文字母不能通用?其實機碼、登錄值名稱的大小寫,只是方便使用者進行辨認。在登 錄檔中並沒有區分大小寫,不管使用大寫或小寫字母,系統都視為相同字母。不過為了方便閱讀,後續 說明我們還是會區分大小寫,實際輸入時,你可以依照自己的習慣,自行決定使用大寫或小寫字母。

在 Windows 95/98/2000/NT 中,關於電腦設定資訊的資料庫存放庫。登錄包含了在操作期間 Windows 會持續參照的資訊,如:每個使用者的設定檔。安裝在電腦上的程式,以及每個程式可以建立的文件類型。資料夾及程式圖示的屬性設定。系統上有哪些硬體存在。正在使用的連接埠是哪幾個。登錄是類似樹狀目錄的階級組織,是由識別碼以及它們的子機碼、Hive及數值項目所組成。在識別碼中的識別碼。在登錄結構中,子機碼是樹狀子目錄及識別碼的次級。在 .ini 檔案中,識別碼及子機碼有相似的區段標頭;不過子機碼可以執行功能。
登錄檔編輯器可以由開始功能表中的執行項目輸入Regedit來開啟登錄檔結構
登錄檔是一種階層式、樹狀結構化的資料庫。登錄值主要儲存在兩個檔中。正在使用的檔案是以目前的系統組態資料為主,系統會將這些有關電腦目前的使用設定資料記錄於System.dat裡;至於所有使用者的設定資料則通通存在User.dat
登錄值是以樹狀結構輸出,就好像Win 3.x的簡易登錄值,更像Win NT的登錄值。以下為 Windows95/98/2000/NT 登錄檔裡的根目錄鍵值。
HKEY_CLASSES_ROOT
這裡所含的資料種類跟Win 3.x的Reg.dat一樣。這樣記載的主要是OLE跟檔案對應配置的資訊。對應資料主要是在你選擇一種特定檔案格式時,Windows可從對應的應用程式來執行或列印該檔。
HKEY_CURRECT_USER
這個鍵值裡是有關系統與程式的使用者特定設定值。這個鍵值是執行時(使用者登錄時),由該使用者在 HKEY_USERS 裡的登錄值資訊所建立的。因此這裡是有關該使用者對他自喜好使用環境的設定值。舉例來說,今天某申將他進入Windows時所播放的音樂設定為 Faye.wav,則在他登錄時,這個設定就會列在這個鍵值裡,當然裡面還包括了顏色配置、標題、桌面配置等等。
HKEY_LOCAL_MACHINE
在這個鍵值裡詳細的列載了有關電腦、驅動程式及其他系統設定。這算是機器描述資訊,主要是有關於已安裝的硬體種類、連接埠的對應情形、軟體組態設定及其他資訊。這些資料主要是針對機器而不是使用者,但是通常要破解軟體,很多時候可以從這裡下手。
HKEY_USERS
這裡記載著該台工作站所有使用者的資料。每個使用者的資料都存在這裡。此外還有一個一般使用者設定。這個設定主要是給以新使用者身份登錄工作站時用的參考樣版。而此資料主要是程式、事件規畫、桌面還境等等的設定值。
HKEY_CURRECT_CONFIG
本鍵值裡記錄著該電腦實際連接的硬體設定。主要用在當電腦有多重的組態可使用時,如一部可攜式電腦利用船塢方式連接或脫離一部電腦時,即可用到這裡的不同資訊。這裡的資料是複製位於HKEY_LOCAL_MACHINE裡的組態資訊。
  • 登錄檔的修復
在你每次開機時 Windows 會自動執行 Windows目錄Scanregw.exe 這個程式來備份每天的登錄檔,並壓縮成微軟的 *.Cab 壓縮檔後存到磁碟中的一個專放備份檔案的目錄。該目錄為 Windows目錄Sysbckup
  • 登錄檔的深入探索
前面說過許多軟體的資訊都會存在於 HKEY_LOCAL_MACHINE 或 HKEY_CURRECT_USER 裡,這也意謂著我們可以從此處取得各軟體的一些資訊,例如軟體的時間限制、功能限制等....通常軟體的資訊會存在這兩個根機碼下的Software該軟體公司名稱軟體名稱,例如微軟的軟體就會存在於SoftwareMicrosoft軟體名稱
範例:SoftwareMicrosoftInternetExplorer裡會看到有許多子機碼,這些就是 Microsoft 公司的 InternetExplorer 這套軟體的一些設定值,我們以Main這個子機碼來做示範。進去後會看到有許多字串值、Dword值及二進位值,我們可以按照這些值的名稱的意義來判斷該值的功能
例如 : FullScreen這個字串值的內容有 yes/no 這兩個可能性
當FullScreen的值為yes時當你打開InternetExplorer時會以全螢幕開啟
當FullScreen的值為no時當你打開InternetExplorer時就會以一般視窗開啟
PS : 不適當的修改登錄檔會造成程式錯誤嚴重時會發生作業系統錯誤

修改微軟的登錄機碼 (供參考)
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer
"NoDriveTypeAutoRun"=hex:b5" 取消自動播放資料光碟為"b5", 自動播放為"95"
"NoRecentDocsMenu"=hex:1" 隱藏文件選單"
"NoLogoff"=hex:0" 隱藏開始選單的登出"
"NoFavoritesMenu"=hex:1" 隱藏我的最愛選單"
"NoRecentDocsHistory"=hex:1" 隱藏文件歷史記錄"
"NoPrinterTabs"=dword:1" 隱藏一般及詳細資料畫面"
"NoDeletePrinter"=dword:1" 關閉刪除印表機"
"NoAddPrinter"=dword:1" 關閉其它印表機"
"NoStartMenuSubFolders"=dword:1" 隱藏開始功能表子資料夾"
"NoRun"=dword:1" 移除 '執行' 指令"
"NoSetFolders"=dword:1" 從開始功能表的 '設定' 移除資料夾"
"NoSetTaskbar"=dword:1" 從開始功能表的 '設定' 移除工作列"
"NoFind"=dword:1" 移除 '尋找' 指令"
"NoDrives"=hex: 取消的磁碟機代號
"NoDrives"=dword:03ffffff" 隱藏 '我的電腦' 的磁碟機"
"NoNetHood"=dword:1" 隱藏網路上的芳鄰"
"NoDesktop"=dword:1" 隱藏桌面上所有的項目"
"NoClose"=dword:1" 關閉「關機」指令"
"NoSaveSettings"=dword:1" 結束不要儲存設定值"
"RestrictRun"=dword:00000001 "只執行容許的應用程式檔名,需配合另一個機碼RestrictRun
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRestrictRun
"1"="regedit.exe"
"2"="command.com"
注意,這個機碼相當的危險,可能會使電腦無法使用,所以一定要設定成Regedit可以使用才行
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerSystem
顯示器
"NoDispCPL"=dword:1" 關閉顯示器控制台"
"NoDispBackgroundPage"=dword:1" 隱藏背景畫面"
"NoDispScrSavPage"=dword:1" 隱藏螢幕保護裝置畫面"
"NoDispAppearancePage"=dword:1" 隱藏外觀畫面"
"NoDispSettingsPage"=dword:1" 隱藏設定值畫面"
"NoSecCPL"=dword:1" 關閉密碼控制台"
"NoPwdPage"=dword:1" 隱藏變更密碼畫面"
"NoAdminPage"=dword:1" 隱藏遠端管理畫面"
"NoProfilePage"=dword:1" 隱藏使用者設定檔畫面"
"NoDevMgrPage"=dword:1" 隱藏裝置管理員畫面"
"NoConfigPage"=dword:1" 隱藏硬碟設定檔畫面"
"NoFileSysPage"=dword:1" 隱藏檔案系統按鈕"
"NoVirtMemPage"=dword:1" 隱藏虛擬記憶體按鈕"
"DisableRegistryTools"=dword:1" 關閉登錄編輯工具"
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerWinOldApp
"Disabled"=dword:1" 關閉 MS-DOS 模式"
"NoRealMode"=dword:1" 關閉單一模式 MS-DOS 應用程式"

HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerNetwork
"NoNetSetup"=dword:1" 關閉網路控制台"
"NoNetSetupIDPage"=dword:1" 隱藏識別資料畫面"
"NoNetSetupSecurityPage"=dword:1" 隱藏存取控制畫面"
"NoFileSharingControl"=dword:1" 關閉檔案分享控制"
"NoPrintSharingControl"=dword:1" 關閉列印分享控制"
"NoEntireNetwork"=dword:1" 網路上的芳鄰沒有 '整個網路'"
"NoWorkgroupContents"=dword:1" 網路上的芳鄰沒有工作群組內容"

"登入旗號"
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionWinlogon]
"LegalNoticeCaption"="OhMen工作室"
"LegalNoticeText"="Http://home.pchome.com.tw/cool/ohmenhttp://www.ohmen.com.tw E_Mail ohmen@pchome.com.tw"
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionPoliciesNetwork]
"HideSharePwds"=dword:1" 用星號隱藏資源分享密碼
"DisablePwdCaching"=dword:1" 關閉密碼快取處理
"AlphanumPwds"=dword:1" 需要英數字元的 Windows 密碼
"MinPwdLen"=dword:1" 最短的 Windows 密碼長度
"NoDialIn"=dword:1 撥號網路""關閉撥入
"NoFileSharing"=dword:1" 關閉檔案分享
"NoPrintSharing"=dword:1 關閉列印分享

[HKEY_CLASSES_ROOT*shell以記事本開啟command]
預設="Notepad.exe %1" 不明的檔案以記事本開啟

任何檔案的動作,都幫它配上聲音
例如當WinAmp開啟和關閉時 都有自己的聲音
先增加機碼winamp
[HKEY_CURRENT_USERAppEventsSchemesAppswinamp]
再增加機碼open 開啟程式
HKEY_CURRENT_USERAppEventsSchemesAppswinampopen]
再增加機碼close 關閉程式
[HKEY_CURRENT_USERAppEventsSchemesAppswinampclose]
最後到控制台->聲音->winamp->開啟程式 選取所要的聲音

[HKEY_CURRENT_USERControl PanelDesktop]
"MenuShowDelay"="0" 開始選單的延遲時間0-10,0為無延遲

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionSetup]
"SourcePath"="e:WIN98" 更改win98原始程式的路徑
自動登錄
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon]
"AutoAdminLogon"="1"
"DefaultUserName"="ohmen"
"DefaultPassword"="YourPassword"

[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion]
"RegisteredOwner"="ohmen" 註冊者的名稱
刪除螢幕保護程式的密碼
[HKEY_CURRENT_USERControl PanelDesktop]
"ScreenSaveUsePassword" 改成 00000000
"ScreenSave_Data" 改成 00
取消IE5的分級密碼
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesRatings]

[HKEY_CLASSES_ROOTpiffile]
"IsShortcut"=""
[HKEY_CLASSES_ROOTlnkfile]
"IsShortcut"=""
整個刪除掉兩個"IsShortcut"="",則捷徑中的小箭頭不見

[HKEY_CURRENT_USERControl PanelSound]
"Beep"="No" 取消錯誤時beep聲,開啟為"yes"
更改特殊資料夾的名稱
[HKEY_CLASSES_ROOTCLSID{21EC2020-3AEA-1069-A2DD-08002B30309D}]
預設="身邊" "變更控制台名稱"
[HKEY_CLASSES_ROOTCLSID{992CFFA0-F557-101A-88EC-00DD010CCC48}]
預設="雨過天晴" "變更撥號網路名稱"
[HKEY_CLASSES_ROOTCLSID{645FF040-5081-101B-9F08-00AA002F954E}]
預設="或許妳是對的" "變更資源回收筒名稱"
[HKEY_CLASSES_ROOTCLSID{2227A280-3AEA-1069-A2DE-08002B30309D}]
預設="天使" "變更印表機名稱"
[HKEY_CLASSES_ROOTCLSID{D6277990-4C6A-11CF-8D87-00AA0060F5BF}]
預設="乾脆" "變更排程名稱"

HKEY_CLASSES_ROOTexefileshellopencommand
預設="%1" %*" 這個機碼若不是這樣的話,表示有病毒入侵,趕快改回來吧
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnceEx
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices
HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionRunonce
上面這幾個機碼下的值,為每次開機時都會執行的檔案,也是常常病毒寄生的地方
檢查一下有沒有奇怪的程式,很有可能是病毒哦
HardwareDes criptionSystemCentralProcessor
這下面的機碼為CPU的型號資訊

HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionNetworkLanMan
這個機碼下的子機碼為所開的資源分享名稱,檢查一下分享資料夾下有一個名稱
為Flags的值,通常為3位數,如102,但若百位數為3的話,則表示這個分享的資料夾
為隱藏的資料夾,使用者無法知道開了這個資料夾,但是別台電腦還是可以存取。
解決方法,可以將個LanMan下資源分享的機碼殺掉

加速 win2000 瀏覽的速度
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/Current Version/Explorer/RemoteComputer/NameSpace
Under that branch, select the key :
{D6277990-4C6A-11CF-8D87-00AA0060F5BF}
and delete it.
讓您的 Windows 98 變成已註冊的版本
1﹑按“開始執行”,鍵入“regedit”後按確定。
2﹑進入到“HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion”。
3﹑找到機碼“RegDone”,將數值改為“1”,即成為已註冊的 WIN98。
4﹑關閉此程式。
然後您的 Windows 98 就己經變成了已註冊的 WIN98 了!
您就不必再擔心被微軟抓到了
隱藏桌面
HKEY_CURRENT_USERSoftwareMicrosoft WindowsCurrentVersionPoliciesExplorer
增加 "DWORD" = "NoDesktop" 值 "1"

清除不能反安裝掉的垃圾目錄
HKEY_LOCAL_MACHINESOFTWARE MicrosoftWindowsCurrentVersionUninstall
在這砍掉你已不需要的目錄
關閉開始選單中的"執行""關機""尋找"
HKEY_CURRENT_USERSoftwareMicrosoftWindows CurrentVersionPoliciesExplorer
增加"DWORD" ="NoRun" 關閉執行
增加"DWORD" ="NoClose" 關閉關機
增加"DWORD" ="NoFind" 關閉尋找
值為1,要復原的話,把值改為0

輸入法排序
HKEY_CURRENT_USERKeyboard layoutPreload
這個地方所對應的輸入法順序為桌面上的順序,
所以要改變輸入法排序,在這個地方排序就好.

使I.E瀏覽器無分級限制
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesRatings
去除Ratingsru就可以了

關掉某個磁碟機

HKEY-CURRENT-USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerNoDrives
預設的鍵值是0x00000000
01=A 02=B 04=C 08=D....
要關掉那一個磁碟,把數據填入即可

一台電腦數個IP
HKEY_LOCAL_MACHINESystemCurrentControlSetServicesClassNetTrans
在這個鍵值下尋找 IPAddress和IPMask兩個鍵
IPAddress 是代表IP位址(要幾個自己加)
IPMask是代表子網路遮罩

鎖定桌面
HkeyUsersdefaultSoftwareMicrosoftWindowsCurrent VersionPoliciesExplorer
把"No Save Setting " 鍵值改為1就行了
IE下載地各數太少嗎?
1.按 "開始" -> "執行",在開啟的地方鍵入 "regedit.exe" 再按確定。
2.在左邊的視窗,請找到
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVers ionInternet Settings
3.在右邊的視窗,按右鍵應該會出現 "新增" 訊息。
4.選擇 "DWORD值",然後鍵入 "MaxConnectionsPer1_0Server",再按右鍵修改為 "63"。
5.按步驟4,新增另一 "MaxConnectionsPerServer",並設值為 "63"。
6.結束 Regedit.exe,登出系統並重新啟動 Windows
================================================================

免開機/重新登入即可重新起始登錄值
1.資訊來源http://www.winguides.com/registry/display.php/239/
2.方法:
Windows 98/Me:
按 CTRL + ALT + DELETE,進入工作列表後,選擇「Explorer」,按「結束工作」,如果出現關機的畫面,記得選「取消」,
過幾秒後會出現一個錯誤訊息,選「結束工作」,即可完成重新載入登錄檔的動作。
Windows 2000/XP:
按 CTRL + ALT + DELETE,進入工作管理員後,在「處理程序」中選擇「Explorer.exe」,按「結束處理程序」,之後,在「檔

案」中選「新工作(執行)...」,鍵入「Explorer.exe」,再按「確定」,即可完成重新載入登錄檔的動作。

沒有留言:

張貼留言

WPF聊天室应用(ASP.NET Core SignalR)

  WPF聊天室应用(ASP.NET Core SignalR) https://www.bilibili.com/video/BV1Q741187Si?p=2 https://www.bilibili.com/video/BV1UV411e75T?from=search&...