判断本机安装的excel版本
public List<string> ExcelVsion()
        {   
            List<string> list=new List<string>();
            List<string> lisemp = new List<string>();
            List<string> listvison = new List<string>();
            RegistryKey rk = Registry.LocalMachine;
            RegistryKey akey = rk.OpenSubKey(@"SOFTWARE\\Microsoft\\Office");
            RegistryKey csk;
            string str;
            hash = new Hashtable();
           
            string[] ss = akey.GetSubKeyNames();
            foreach (string s in ss)
            { 
                string strem=@"SOFTWARE\\Microsoft\\Office"+@"\\"+s;
                csk=rk.OpenSubKey(strem);
                string[] csd = csk.GetSubKeyNames();
                foreach (string sk in csd)
                {
                    if (sk=="Excel")
                    {
                        str = strem + @"\\" + "Excel";
                        list.Add(str);
                        lisemp.Add(s);
                    }
                }
            }
            if (list!=null)
            {
                for (int index = 0; index < list.Count;index++ )
                {
                    list[index] = list[index] + @"\\InstallRoot\\";
                    RegistryKey f = rk.OpenSubKey(list[index]);
                    if (f!=null)
                    {
                        listvison.Add(lisemp[index]);
                    } 
                
                }
                
            }
         
   return listvison;            
        }
返回空值则没有安装,返回值大于1则安装了多个。
                    
                
                
            
        
浙公网安备 33010602011771号