修改登錄檔

2021-05-06 16:26:36 字數 2296 閱讀 1371

在《用visual c#讀取註冊資訊》的文中,已經介紹了用 visual c#來讀取登錄檔中的註冊資訊。本文就來介紹用visual c#對登錄檔的另外乙個操作,這也是乙個具有破壞性的操作過程--刪除註冊資訊。

在上文中已經知道,由於visual c#本身沒有帶類庫,他對登錄檔的處理過程是通過呼叫.net framework sdk中的命名空間microsoft.win32中封裝的二個類來實現的。這二個類就是registry類、registrykey類。在registrykey類中定義了三個方法來刪除登錄檔中的註冊資訊。他們分別是:deletesubkey ( )方法、deletesubkeytree ( )方法、deletevalue ( )方法。下面就具體介紹一下在visual c#中如何正確使用這三個方法。

一.如何用visual c#中呼叫這三個方法:

在介紹如何使用這三個方法之前,還需要重新介紹一下registrykey類中的乙個方法--opensubkey ( )方法。在上一文中已經介紹了,此方法是開啟指定的子鍵。其實opensubkey( )方法有二種呼叫的方式:

i > .opensubkey ( string , subkey ) :這種呼叫方式是對於此子鍵只是進行讀操作。

ii > .opensubkey ( string subkey , boolean writable ):當對子鍵使用寫操作的時候要用此種呼叫方法。如果在對子鍵使用了寫操作,但仍然使用第一種呼叫方法,在程式執行的時候會產生乙個錯誤資訊。

(1). deletesubkey ( )方法:

此方法是刪除乙個指定的子鍵,在使用此方法的時候,如果在此子鍵中還存在另外的子鍵,則會產生乙個錯誤資訊。在程式中呼叫此方法有二種原型,為:

i > . deletesubkey ( string , subkey ):這種呼叫方式就是直接刪除指定的子鍵。

ii > . deletesubkey ( string subkey , boolean info ):其中的"string"是要刪除的子鍵的名稱,"boolean"引數的意思是:如果值為"true",則在程式呼叫的時候,刪除的子鍵不存在,則產生乙個錯誤資訊;如果值為"false",則在程式呼叫的時候,刪除的子鍵不存在,也不產生錯誤資訊,程式依然正確執行。所以在具體的程式設計過程中,我還是推薦使用第二種呼叫方法。

(2). deletesubkeytree ( )方法:

此方法是徹底刪除指定的子鍵目錄,即:刪除該子鍵以及該子鍵以下的全部子鍵。由於此方法的破壞性是非常強的,所有在使用的時候要非常主要。在程式中呼叫此方法的原型就一種,為:

deletesubkeytree ( string subkey ):其中"subkey"就是要徹底刪除的子鍵名稱。

(3). deletevalue ( )方法:

此方法是刪除指定的鍵值。在程式中呼叫此方法的原型就一種,為:

deletevalue ( string value ):其中"value"就是要刪除的鍵值的名稱。

在介紹完與刪除登錄檔中註冊資訊有關方法後,將通過乙個程式來說明他們在程式中具體用法。

二. 程式設計和執行環境以及要準備的工作:

i > .視窗系統2000伺服器版

ii > ..net framework sdk beta 2版

iii > .由於程式的功能是刪除指定的主鍵、子鍵和鍵值,這就需要我們在登錄檔中先為設定好這些值的位置和名稱。具體如下:

在hkey_local_machine主鍵下面的"software"子鍵中建立如下子鍵和鍵值:

在"software"子鍵下建立"aaa"子鍵。在"aaa"子鍵下面建立"bbb"子鍵和"ddd"子鍵。在"bbb"子鍵中建立名稱為"ccc"的鍵值,鍵值的值為"ccc"。子"ddd"子鍵中建立子鍵"eee",並在此子鍵中建立乙個"fff"鍵值,鍵值的值為"fff"。程式中要刪除的鍵值是"ccc"鍵值,要刪除的子鍵是"bbb",要徹底刪除的子鍵是"ddd"。

五. 總結:

本文介紹visual c#登錄檔程式設計的乙個重要內容,即:如何刪除註冊資訊。由於刪除註冊資訊是一項非常具有破壞性的操作,所以在操作之前一定要注意對登錄檔的保護工作。 

修改登錄檔

登錄檔修改

大中小 開關機加速系列 開始 加快關機速度 hkey current user control panel desktop 關機時自動關閉停止響應的程式 hkey current user control panel desktop autoendtasks 1 關機結束程式等待時間 hkey cu...

修改Windows登錄檔

始終使在 windows 登錄檔的備份之前修改任何設定。通過複製 system.dat 和 user.dat 或匯出單個使用 regedit 登錄檔的一部分,您可以備份整個登錄檔。單擊開始按鈕,單擊執行,然後鍵入 regedit。單擊確定。在登錄檔編輯器中選擇所要備份的金鑰。從登錄檔選單中選擇匯出登...

windows dos 修改登錄檔

u盤被寫保護了,然後需要修改登錄檔,解決辦法這個不一定是最好的,僅僅是為了能讓dos能夠做處理,記錄一下 rem delete first reg delete hkey local machine system currentcontrolset control storagedevicepoli...