Registry In's and Out's Using C#
http://www.csharphelp.com/archives2/archive430.html

解决方案 »

  1.   

    http://www.csdn.net/Develop/read_article.asp?id=20983
      

  2.   

    读写注册表
    Visual Basic .NET 提供了四个用于访问注册表的函数。若要使用这些函数,必须具有 RegistryPermissionAccess 枚举中的读写权限。任何以完全信任方式运行的代码(在默认安全策略下,指任何安装在用户的本地硬盘驱动器上的代码)都具有访问注册表的必要权限。
    使用内置注册表访问函数时有一个限制:只能访问 HKEY_CURRENT_USER\Software\VB and VBA Program Settings 下的注册表项。若要访问这些注册表项,必需登录到系统,因为 HKEY_CURRENT_USER 注册表项只有在您登录到系统后才被激活。
    例:SaveSetting("应用程序或项目名", "要保存到的节的名称", "要保存的键设置的名称", "键的设定值")
      GetSetting 返回注册表中某个应用程序项的项设置值。 
      GetAllSettings 返回注册表中应用程序项的项设置及相应值的列表。 
      SaveSetting 在注册表中创建或保存应用程序项。 
      DeleteSetting 从注册表的应用程序项中删除节或项设置。 实例:检查以确定指定的注册表项 SOFTWARE\\Microsoft\\TestApp\\1.0 是否存在,并且如果该项不存在则创建它。
    Private Sub DoesKeyExist
        Dim regVersion As Microsoft.Win32.RegistryKey
        regVersion = _
    Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\TestApp\\1.0", True)
        If regVersion Is Nothing Then
            regVersion = _
    Microsoft.Win32.Registry.CurrentUser.CreateSubKey("SOFTWARE\\Microsoft\\TestApp\\1.0")
        End If
    End Sub
    '读取并递增一个 DWORD 值(Version),然后将其写入 HKEY_CURRENT_USER
    Dim intVersion As Integer = 0
    If (Not regVersion Is Nothing) Then
        intVersion = regVersion.GetValue("Version", 0)
        intVersion = intVersion + 1
        regVersion.SetValue("Version", intVersion)
        regVersion.Close()
    End If