与桌面Windows系统类似,WinCE将有关操作系统、应用程序和驱动的设置信息都保存在系统注册表中。WinCE的注册表与桌面系统中的组织方式也差不多,包括了如下四个根键:
HKEY_CLASS_ROOT,包含了文件扩展名信息和COM子系统的配置信息
HKEY_LOCAL_MACHINE,包含了系统、驱动和应用程序的配置信息
HKEY_CURRENT_USER,包含了当前用户的配置信息
HKEY_USER,包含了所有用户的信息
WinCE提供了一系列的用于操作注册表的API,之前做的驱动调试助手小工具就是利用这些API实现的。那VB.NET如何操作注册表呢?实际上更简单,.NET Compact Framework提供了Registry和RegistryKey,可以利用这两个类,很方便的实现注册表的读写。
下面以修改WinCE设备的名称及描述为例,简单介绍一下WinCE下VB.NET读写注册表的方法。参考代码如下。
Code highlighting produced by Actipro Code
Highlighter (freeware)http://www.Code
Highlighter.com/--> 1 Imports Microsoft.Win32
Public Class DevName
Private Sub ButtonSet_Click(ByVal sender As Sy
stem.Object,ByVal e As Sy
stem.EventArgs) Handles ButtonSet.Click
Dim hklm As RegistryKey = Registry.LocalMachine
Dim subkey As RegistryKey = hklm.OpenSubKey("Ident",True)
subkey.SetValue("Name",Text
BoxDevName.Text)
subkey.SetValue("Desc",Text
BoxDevDesc.Text)
End Sub
Private Sub ButtonGet_Click(ByVal sender As Sy
stem.Object,ByVal e As Sy
stem.EventArgs) Handles ButtonGet.Click
Dim hklm As RegistryKey = Registry.LocalMachine
Dim subkey As RegistryKey = hklm.OpenSubKey("Ident",False)
Text
BoxDevName.Text = subkey.GetValue("Name")
Text
BoxDevDesc.Text = subkey.GetValue("Desc")
End Sub
Private Sub ButtonClear_Click(ByVal sender As Sy
stem.Object,ByVal e As Sy
stem.EventArgs) Handles ButtonClear.Click
End Sub
End Class
如果WinCE系统
支持HIVE
注册表,还可以通过
RegistryKey.Flush()或RegistryKey.Close(),将修改的内容刷新的磁盘。