首页 > 技术文章 > 获取office版本

swarb 2014-03-21 11:33 原文

   /// <summary>
        /// office版本
        /// </summary>
        public enum OfficeVersion { Office2007,Office2003}    

 

  /// <summary>
        /// 获取office版本
        /// </summary>
        /// <returns></returns>
        public static OfficeVersion GetOfficeVersion()
        {
            OfficeVersion version = OfficeVersion.Office2003;
            Microsoft.Win32.RegistryKey regKey = null;
            Microsoft.Win32.RegistryKey regSubKey = null;
            try
            {
                regKey = Microsoft.Win32.Registry.LocalMachine;
                if (regSubKey == null)
                {//office2007
                    regSubKey = regKey.OpenSubKey(@"SOFTWARE\Microsoft\Office\12.0\Common\InstallRoot", false);
                    version= OfficeVersion.Office2007;
                }
                if (regSubKey == null)
                {//Office2003
                    regSubKey = regKey.OpenSubKey(@"SOFTWARE\Microsoft\Office\11.0\Common\InstallRoot", false);
                    version= OfficeVersion.Office2003;
                }
            }
            catch (System.Security.SecurityException ex)
            {
                throw new System.Security.SecurityException("您没有读取注册表的权限", ex);
            }
            catch (Exception ex)
            {
                throw new Exception("读取注册表出错!", ex);
            }
            if (regKey != null)
            {
                regKey.Close();
                regKey = null;
            }

            if (regSubKey != null)
            {
                regSubKey.Close();
                regSubKey = null;
            }
            return version;
        }

 

 

http://bbs.csdn.net/topics/350108050

 

http://hi.baidu.com/guog_/item/26a2e825f94c76d7a517b65c

推荐阅读