• 分类

  • 重置

读取注册表根据Office版本获取数据库连接字段

    
    /// <summary> 
    /// 读取注册表,根据Office版本获取数据库连接字段 
    /// </summary> 
    /// <returns>数据库连接字段</returns> 
    private string GetConnectionString() 
    { 
      string strConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = "; 
     
      RegistryKey rk = Registry.LocalMachine; 
      //查询Office2003 
      RegistryKey f03 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\11.0\Access\InstallRoot\"); 
      //查询Office2007 
      RegistryKey f07 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\12.0\Access\InstallRoot\"); 
      //查询Office2010 
      RegistryKey f10 = rk.OpenSubKey(@"SOFTWARE\Microsoft\Office\14.0\Access\InstallRoot\"); 
     
      if (f03 != null) 
      { 
        strConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = "; 
      } 
      else if (f07 != null || f10 != null) 
      { 
        strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source = "; 
      } 
     
      return strConnectionString; 
    }