下面我們就來用.net下託管語言c#登錄檔操作,主要內容包括:登錄檔項的建立,開啟與刪除、鍵值的建立(設定值、修改),讀取和刪除、判斷登錄檔項是否存在、判斷鍵值是否存在。
準備工作:
1:要操作登錄檔,我們必須要引入必要的命名空間:
using microsoft.win32;在這個命名空間裡面包含了許多登錄檔相關的類,足夠我們使用了~~
2:命名空間裡面提供了乙個類:registrykey 利用它我們可以定位到登錄檔最開頭的分支:
classesroot,currentuser,users,localmachine,currentconfig
如:registrykey key = registry.localmachine;
3:在操作的過程中涉及到子分支,要用\\進行深入,單個\會報錯!
4:最後要呼叫registrykey物件的close()關閉對登錄檔的修改~~~
5:以下我們的例子都是在localmachine分支下,請注意。
一:c#登錄檔項的建立,開啟與刪除
1:建立
建立登錄檔項主要用到registrykey 的createsubkey()方法。如:
registrykey key =registry.localmachine;2:開啟registrykey software = key.createsubkey("
software\\test");
//在hkey_local_machine\software下新建名為test的登錄檔項。如果已經存在則不影響!
開啟登錄檔項主要用到registrykey 的opensubkey()方法。如:
注意,如果該登錄檔項不存在,這呼叫這個方法會丟擲異常
registrykey key =registry.localmachine;3:刪除registrykey software = key.opensubkey("
software\\test
",true
);//
注意該方法後面還可以有乙個布林型的引數,true表示可以寫入。
刪除登錄檔項主要用到registrykey 的deletesubkey()方法。如:
registrykey key =registry.localmachine;注意,如果該登錄檔項不存在,這呼叫這個方法會丟擲異常key.deletesubkey(
"software\\test
",true); //
該方法無返回值,直接呼叫即可
key.close();
二:鍵值的建立(設定值、修改),讀取和刪除
1:建立(設定值、修改)
對鍵值的建立修改等操作主要用到registrykey 的setvalue()方法
registrykey key =registry.localmachine;2:讀取registrykey software = key.opensubkey("
software\\test
",true); //
該項必須已存在
software.setvalue("
test
", "");
//在hkey_local_machine\software\test下建立乙個名為「test」,值為「」的鍵值。如果該鍵值原本已經存在,則會修改替換原來的鍵值,如果不存在則是建立該鍵值。
//注意:setvalue()還有第三個引數,主要是用於設定鍵值的型別,如:字串,二進位制,dword等等~~預設是字串。如:
"test", "0", registryvaluekind.dword);
//二進位制資訊
key.close();
c 操作登錄檔
1.讀取指定名稱的登錄檔的值 private string getregistdata string name 以上是讀取的登錄檔中hkey local machine software目錄下的 目錄中名稱為name的登錄檔值 2.向登錄檔中寫資料 private void wtregedit st...
C 登錄檔操作
寫這篇日誌以前不是沒有接觸過c 來操作登錄檔,但這次的體會更深入了一點,故筆記如下。首先可以從 登錄檔reg檔案語法規則 了解下.reg檔案的語法規則,因為很多時候是把.reg裡的 轉換為程式裡的啊。知道語法後,可以根據裡面的 開始逐個轉化為c 了。首先是建立hkey,呼叫regcreatekey或...
C 操作登錄檔
windows 作業系統的登錄檔包含了很多有關計算機執行的配置方式,開啟登錄檔我們可以看到登錄檔是按類似於目錄的樹結構組織的,其中第二級目錄包含了五個預定義主鍵分別是 hkey classes root,hkey current user,hkey local machine,hkey users,...