C#操作注冊表之RegistryKey類
表示 Windows 注冊表中的項級節(jié)點。 此類是注冊表封裝。
繼承層次結(jié)構(gòu)
System.Object
System.MarshalByRefObject
Microsoft.Win32.RegistryKey
命名空間:Microsoft.Win32
程序集:mscorlib(在 mscorlib.dll 中)
屬性
名稱 | 說明 |
---|---|
Handle | 獲取一個 SafeRegistryHandle 對象,該對象表示當(dāng)前 RegistryKey 對象封裝的注冊表項。 |
Name | 檢索項的名稱。 |
SubKeyCount | 檢索當(dāng)前項的子項數(shù)目。 |
ValueCount | 檢索項中值的計數(shù)。 |
View | 獲取用于創(chuàng)建注冊表項的視圖。 |
方法
名稱 | 說明 |
---|---|
Close | 關(guān)閉該項,如果該項的內(nèi)容已修改,則將該項刷新到磁盤。 |
CreateSubKey(String) | 創(chuàng)建一個新子項或打開一個現(xiàn)有子項以進(jìn)行寫訪問。 |
CreateSubKey(String, RegistryKeyPermissionCheck) | 使用指定的權(quán)限檢查選項創(chuàng)建一個新子項或打開一個現(xiàn)有子項以進(jìn)行寫訪問。 |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions) | 使用指定的權(quán)限檢查和注冊表選項,創(chuàng)建或打開一個用于寫訪問的子項。 |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity) | 使用指定的權(quán)限檢查選項和注冊表安全性創(chuàng)建一個新子項或打開一個現(xiàn)有子項以進(jìn)行寫訪問。 |
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity) | 使用指定的權(quán)限檢查選項、注冊表選項和注冊表安全性,創(chuàng)建或打開一個用于寫訪問的子項。 |
DeleteSubKey(String) | 刪除指定的子項。 |
DeleteSubKey(String, Boolean) | 刪除指定的子項,并指定在找不到該子項時是否引發(fā)異常。 |
DeleteSubKeyTree(String) | 遞歸刪除子項和任何子級子項。 |
DeleteSubKeyTree(String, Boolean) | 以遞歸方式刪除指定的子項和任何子級子項,并指定在找不到子項時是否引發(fā)異常。 |
DeleteValue(String) | 從此項中刪除指定值。 |
DeleteValue(String, Boolean) | 從此項中刪除指定的值,并指定在找不到該值時是否引發(fā)異常。 |
Dispose | 釋放由 RegistryKey 類的當(dāng)前實例占用的所有資源。 |
Flush | 將指定的打開注冊表項的全部特性寫到注冊表中。 |
FromHandle(SafeRegistryHandle) | 根據(jù)指定的句柄創(chuàng)建注冊表項。 |
FromHandle(SafeRegistryHandle, RegistryView) | 利用指定的句柄和注冊表視圖設(shè)置創(chuàng)建注冊表項。 |
GetAccessControl() | 返回當(dāng)前注冊表項的訪問控制安全性。 |
GetAccessControl(AccessControlSections) | 返回當(dāng)前注冊表項的訪問控制安全性的指定部分。 |
GetSubKeyNames | 檢索包含所有子項名稱的字符串?dāng)?shù)組。 |
GetValue(String) | 檢索與指定名稱關(guān)聯(lián)的值。 如果注冊表中不存在名稱/值對,則返回 null。 |
GetValue(String, Object) | 檢索與指定名稱關(guān)聯(lián)的值。 如果未找到名稱,則返回您提供的默認(rèn)值。 |
GetValue(String, Object, RegistryValueOptions) | 檢索與指定的名稱和檢索選項關(guān)聯(lián)的值。 如果未找到名稱,則返回您提供的默認(rèn)值。 |
GetValueKind | 檢索與指定名稱關(guān)聯(lián)的值的注冊表數(shù)據(jù)類型。 |
GetValueNames | 檢索包含與此項關(guān)聯(lián)的所有值名稱的字符串?dāng)?shù)組。 |
OpenBaseKey | 打開一個新的 RegistryKey,它使用指定的視圖在本地計算機(jī)上表示請求的項。 |
OpenRemoteBaseKey(RegistryHive, String) | 打開一個新的 RegistryKey,它表示遠(yuǎn)程計算機(jī)上的請求的項。 |
OpenRemoteBaseKey(RegistryHive, String, RegistryView) | 打開一個新的注冊表項,它使用指定的視圖在遠(yuǎn)程計算機(jī)上表示請求的項。 |
OpenSubKey(String) | 以只讀方式檢索子項。 |
OpenSubKey(String, RegistryKeyPermissionCheck) | 檢索指定的子項以進(jìn)行讀取或讀/寫訪問。 |
OpenSubKey(String, Boolean) | 檢索指定的子項,并指定是否將寫訪問權(quán)限應(yīng)用于該項。 |
OpenSubKey(String, RegistryKeyPermissionCheck, RegistryRights) | 檢索指定的子項以進(jìn)行讀取或讀/寫訪問,請求指定的訪問權(quán)限。 |
SetAccessControl | 向現(xiàn)有注冊表項應(yīng)用 Windows 訪問控制安全性。 |
SetValue(String, Object) | 設(shè)置指定的名稱/值對。 |
SetValue(String, Object, RegistryValueKind) | 使用指定的注冊表數(shù)據(jù)類型設(shè)置注冊表項中的名稱/值對的值。 |
ToString | 檢索此項的字符串表示形式。 (重寫 Object.ToString()。) |
備注
要獲取 RegistryKey 的實例,請使用 Registry 類的靜態(tài)成員之一。
注冊表充當(dāng)計算機(jī)上操作系統(tǒng)和應(yīng)用程序的中央信息儲存庫。 注冊表根據(jù)存儲在其中的元素的邏輯順序,以分層形式組織(有關(guān)該層次結(jié)構(gòu)中的基級項,請參見 Registry)。在注冊表中存儲信息時,請根據(jù)存儲的信息類型選擇適當(dāng)?shù)奈恢谩?nbsp;一定要避免損壞由其他應(yīng)用程序創(chuàng)建的信息,原因是這樣會導(dǎo)致那些應(yīng)用程序出現(xiàn)意外的行為,并且還會對您自己的應(yīng)用程序帶來不利影響。
注冊表項是組織基本單元在注冊表,并且可以與文件資源管理器的文件夾比較。 每個具體的注冊表項都可以有子項,就像文件夾下可以有子文件夾一樣。 只要用戶具有相應(yīng)的權(quán)限,且注冊表項不是基項或基項的下一級項,就可以刪除該注冊表項。 每個注冊表項也可帶有與其相關(guān)聯(lián)的多個值(一個值就好比是一個文件),它們用于存儲信息,例如,有關(guān)計算機(jī)上安裝的應(yīng)用程序的信息。 每個值存儲特定的信息,可按需要對其進(jìn)行檢索或更新。 例如,可以為您的公司創(chuàng)建一個 RegistryKey(在項 HKEY_LOCAL_MACHINE\Software 下),然后為您的公司創(chuàng)建的每個應(yīng)用程序創(chuàng)建一個子項。 每個子項保存特定于該應(yīng)用程序的信息,如顏色設(shè)置、屏幕位置和大小或者可識別的文件擴(kuò)展名。
注意,存儲在注冊表中的信息可由其他應(yīng)用程序和用戶使用,因此不要用注冊表存儲安全數(shù)據(jù)或關(guān)鍵的應(yīng)用程序信息。
警告 |
---|
在公開 RegistryKey 對象時不要采用一種可能會導(dǎo)致惡意程序創(chuàng)建成千上萬的無意義的子項或鍵/值對的方式。 例如,不允許調(diào)用方輸入任意鍵或值。 |
在 .NET Framework 4 中開始,注冊表項的長度不再限于 255 個字符。
到此這篇關(guān)于C#操作注冊表之RegistryKey類的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#實現(xiàn)將網(wǎng)頁保存成圖片的網(wǎng)頁拍照功能
這篇文章主要介紹了C#實現(xiàn)將網(wǎng)頁保存成圖片的網(wǎng)頁拍照功能,很實用的一個功能,需要的朋友可以參考下2014-07-07詳解C# Socket簡單例子(服務(wù)器與客戶端通信)
這篇文章主要介紹了詳解C# Socket簡單例子(服務(wù)器與客戶端通信) ,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12C# 使用Word模板導(dǎo)出數(shù)據(jù)的實現(xiàn)代碼
最近接到個需求,使用word模板導(dǎo)出數(shù)據(jù),怎么實現(xiàn)這個需求呢,今天小編通過實例代碼給大家介紹C# 使用Word模板導(dǎo)出數(shù)據(jù)的方法,感興趣的朋友一起看看吧2021-06-06