簡單分析VB.NET注冊表組織結構
VB.NET注冊表還是比較常用的,于是我研究了一下VB.NET注冊表,在這里拿出來和大家分享一下,希望對大家有用。在Windows出問題時,如果能夠了解Windows系統的注冊表,將更容易解決問題; 許多商品化的軟件或專業化的軟件在您的機器上***安裝的時候都會通過改寫注冊表來完成軟件的正確安裝運行,要成為編程高手當然需要掌握讀寫注冊表這一技術。用好注冊表將會為您的應用程序增色不少,下面筆者將具體介紹VB中與注冊表有關的編程方法。
VB.NET注冊表的組織結構
存取注冊表以前, 必須先了解注冊表的組織結構, 而了解注冊表的組織結構最簡單的方法便是啟動 Windows 提供的“注冊表編輯器”, 啟動的方法是單擊“開始”菜單的“運行”命令,輸入 RegEdit 之后確定,可看到“注冊表編輯器”窗口
#T#注冊表編輯器的結構與資源管理器很類似,左邊窗口的每一個文件夾圖標表示一個鍵,就像文件夾下還有子文件夾一樣,注冊表的鍵下也有子鍵。為了完整地表示某一個子鍵,習慣上是采用文件夾的路徑表示法。 當我們在注冊表編輯器左邊窗口選取某一個鍵(或子鍵) 之后,出現在右邊窗口中的是這個鍵的鍵值(Value),鍵值可分成鍵名(Name)及數據(Data)兩部分。對每一個鍵而言,至少都含有一個默認鍵值(Default Value) , 以 “HKEY_CLASSES_ROOT\.bmp”子鍵為例, 其默認鍵值為 “ACDC_BMP”。 除了默認鍵值之外, 這個子鍵還含有名稱 (Name)“Content Type”和數據 (Data)“image/bmp”。
自身提供的關于VB.NET注冊表的函數
了解注冊表的組織結構之后, 接下來討論如何存取它。就像我們存取文件時必須指明文件所在文件夾(目錄)一樣, 存取注冊表時, 則必須先指明鍵。鍵在注冊表編輯器中所看到的是一長串的字符串,例如
- “HKEY_LOCAL_MACHINE\SOFTWARE\
- Microsoft\Windows \CurrentVersion”。
在 Visual Basic 6.0 內部,已經提供了一個標準的注冊位置,以存儲創建于VB的應用程序的程序信息:HKEY_CURRENT_USER\Software\VB and VBA Program settings\(為了敘述簡單,以下將這一位置簡稱“標準位置”)。VB 提供了兩個語句和兩個函數來處理存儲在應用程序注冊位置的程序設置值:
◆函數GetSetting(appname, section, key[, default]): 檢索注冊表設置值。
◆語句SaveSetting appname,section,key,value: 保存或創建注冊表設置值。
◆函數GetAllSettings(appname, section): 返回一個包含多項注冊表設置值的數組。
◆語句DeleteSetting appname, section[, key]: 刪除注冊表設置值。
以上所用參數的說明:
[ ]: 表示可選項。
appname:字符串表達式,包含應用程序或工程的名稱,是標準位置下的一個子鍵。
section:字符串表達式,包含區域名稱,是 appname 下的一個子鍵。
key:字符串表達式,標準位置\appname\
section子鍵的鍵名(Value Name)。
value:字符串表達式,標準位置\appname\
section子鍵對應于鍵名(Value Name)的鍵值(Value)。
default:表達式,如果注冊表項設置中沒有設置值,則返回默認值。如果省略,則 default 取值為長度為零的字符串 (“”)。
GetAllSettings返回Variant,是內容為字符串的二維數組,該二維數組包含指定區域中的所有注冊表項設置值及其對應值。