1. 程式人生 > 其它 >C#進行登錄檔項和鍵值操作

C#進行登錄檔項和鍵值操作

前言

相信大家在安裝西門子PLC軟體的時候,都遇到過要手動刪除登錄檔的情況。

登錄檔對於軟體開發來說,可以用於儲存一些關鍵資訊,這樣一般是不會被刪除的,所以可以用它來做授權相關,,今天跟大家分享一下關於C#操作登錄檔的使用。

登錄檔

系統登錄檔裡包含了大量的系統和軟體安裝資訊,所以如果想要對登錄檔進行操作,必須要先了解它,否則,可能會導致一些意想不到的問題,那就得不償失了。

1、我們可以通過CMD,輸入Regedit,開啟登錄檔。

2、登錄檔有幾個關鍵節點,也叫根分支,分別是:HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE、HKEY_USERS、HKEY_CURRENT_CONFIG,每個節點用於儲存不同的資訊。

3、展開之後,每個資料夾圖標表示的是登錄檔項。

4、每個登錄檔項對應的資料,叫做鍵值對。

C#操作登錄檔項

C#操作登錄檔,首先需要引用名稱空間Microsoft.Win32,然後通過操作該名稱空間下的RegistryKey物件。

1、使用C#開啟登錄檔項:開啟登錄檔裡的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

OpenSubKey方法後面還有一個bool型別的值true,這個代表可寫入操作。

2、使用C#建立登錄檔項:在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion下建立一個名字叫Thinger的項。

3、使用C#刪除登錄檔項:刪除登錄檔中的SOFTWARE\Microsoft\Windows NT\CurrentVersion\Thinger項。

C#操作登錄檔鍵值

不管是建立、獲取、刪除鍵值,首先都需要開啟要建立或設定鍵值對應的登錄檔項

1、建立登錄檔鍵值:在上面的登錄檔項中,增加一個鍵值,鍵名為"Thinger",值為"www.dotnetswj.com"。

SetValue()方法有三個引數,SetValue(鍵名,鍵值,鍵值型別),鍵值型別有字串,二進位制,Dword等,不設定鍵值型別時預設為字串型別。如果登錄檔中已存在該鍵值,執行操作後,會覆蓋該鍵值。

2、獲取登錄檔鍵值:獲取Thinger對應的值。

3、刪除登錄檔鍵值:刪除Thinger對應的鍵值。

註冊刪除鍵值前要保證刪除的鍵值名稱須存在,否則丟擲異常。

最後注意,每次使用完成後,要把使用的RegistryKey物件關閉掉。

應用

最後做個應用,寫個程式自動刪除西門子的那個登錄檔,這樣就不需要每次去登錄檔裡刪除了。

首先要開啟登錄檔項,再刪除登錄檔鍵值。