C 讀寫登錄檔

2022-03-20 21:12:41 字數 1905 閱讀 7136

net框架在microsoft.win32名字空間中提供了兩個類來操作登錄檔:registry和registrykey。這兩個類都是密封類不允許被繼承。下面我們分別來介紹這兩個類。

registry類提供了7個公共的靜態域,分別代表7個基本主鍵(其中兩個在xp系統中沒有)分別是:  

registry.classesroot 對應於hkey_classes_root主鍵

registry.currentuser 對應於hkey_current_user主鍵

registry.localmachine 對應於 hkey_local_machine主鍵

registry.user 對應於 hkey_user主鍵

registry.currentconfig 對應於heky_current_config主鍵

registry.dynda 對應於hkey_dyn_data主鍵

registry.performancedata 對應於hkey_performance_data主鍵

registrykey類中提供了對登錄檔操作的方法。要注意的是操作登錄檔必須符合系統許可權,否則將會丟擲錯誤。

建立子鍵的方法原型為:

public registrykey createsubkey(string sunbkey);

引數sunbkey表示要建立的子鍵的名稱或路徑名。建立成功返回被建立的子鍵,否則返回null。

開啟子鍵的方法原型為:

public registrykey opensubkey(string name);

public registrykey opensubkey(string name,bool writable);

引數name表示要開啟的子鍵名或其路徑名,引數writable表示被開啟的子鍵是否允許被修改,第乙個方法開啟的子鍵是唯讀的。

刪除子鍵的方法原型為:

public void deletesubkey(string subkey);

該方法用於刪除指定的主鍵。如果要刪除的子鍵還包含主鍵則刪除失敗,並返回乙個異常,如果要徹底刪除該子鍵極其目錄下的子鍵可以用方法deletesubkeytree,該方法原型如下:

public void deletesunkeytree(string subkey);

讀取鍵值的方法原型如下:

public object getvalue(string name);

public object getvalue(string name,object defaultvalue);

引數name表示鍵的名稱,返回型別是乙個object型別,如果指定的鍵不存在則返回null。如果失敗又不希望返回的值是null則可以指定引數defaultvalue,指定了引數則在讀取失敗的情況下返回該引數指定的值。

設定鍵值的方法原型如下:

public object setvalue(string name,object value);

刪除鍵值的方法原型如下:

public void deletevalue(string name); 

下面是本人自己寫的測試小例,執行沒有錯誤。

1. 寫入

tryrsg = registry.localmachine.opensubkey("software\\ring",true);//true表示可以修改

//if (rsg.getvalue("testreg") == null)

////else

"testreg", system.datetime.now.tostring());

rsg.close();

}catch (exception ex)

2. 讀取

tryelse

this.label2.text = "該鍵不存在!";

rsg.close();

}catch (exception ex)

C 讀寫登錄檔

static void main string args registry可以獲取登錄檔的根節點。registrykey.createsubkey可以在節點下建立子節點。通過 分隔,可以建立多級節點。setvalue方法用來在指定的節點下建立乙個鍵值對。deletesubkeytree可以遞迴刪除乙...

C 讀寫登錄檔

c 程式設計打造自己的ie瀏覽器選擇自 yudehui 的 blog 關鍵字c 程式設計打造自己的ie瀏覽器 出處ie 是現在windows 平台下用的最多的瀏覽器,那麼如何用程式來修改 ie,打造有自己的特色的 ie呢?我在這裡向介紹怎麼 c 用通過登錄檔來修改ie。首先我們來熟悉一下 c 中修改...

C 讀寫登錄檔

ie 是現在windows 平台下用的最多的瀏覽器,那麼如何用程式來修改 ie,打造有自己的特色的 ie呢?我在這裡向介紹怎麼 c 用通過登錄檔來修改ie。首先我們來熟悉一下 c 中修改登錄檔的方法與函式。在 vc 中提供了 registry 類 registrykey 類來實現對登錄檔的操作。其中...