302Soft—302软件技术联盟

ASP.NET / C# / PowerBuilder 技术交流
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

C#如何获取注册表信息

Posted on 2007-01-18 01:54  寒夜听雨  阅读(467)  评论(0编辑  收藏  举报

实现方式:利用Microsoft.win32类提供的注册表类访问系统注册表获取ODBC数据服务列表。

具体实现:

    Microsoft.win32提供了RegistryKey类,用来访问系统的注册表。
    ///定义注册表子Path
    string strRegPath = @"SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources";
    ///创建两个RegistryKey类,一个将指向Root Path,另一个将指向子Path
    RegistryKey regRootKey;
    RegistryKey regSubKey;
    ///定义Root指向注册表HKEY_LOCAL_MACHINE节点
    regRootKey = Registry.LocalMachine;
    ///Registry枚举类提供了以下几种
    /*
    Registry.ClassesRoot-------------->指向注册表HKEY_CLASSES_ROOT节点
    Registry.CurrentConfig-------------->指向注册表HKEY_CURRENT_CONFIG节点
    Registry.CurrentUser-------------->指向注册表HKEY_CURRENT_USER节点
    Registry.DynData-------------->指向注册表HKEY_DYN_DATA节点(动态注册表数据)
    Registry.LocalMachine-------------->指向注册表HKEY_LOCAL_MACHINE节点
    Registry.PerformanceData-------------->指向注册表HKEY_PERFORMANCE_DATA节点
    Registry.Users-------------->指向注册表HKEY_USERS节点
    */
    regSubKey = regRootKey.OpenSubKey(strRegPath);
    string[] strDSNList = regSubKey.GetValueNames();
   
    ///关闭
    regSubKey.Close();
    regRootKey.Close();   

这样就实现了DSN Service List的读取。


Copyright(C) 2004-2007 302Soft-寒夜听雨 版权所有