1. 註冊表中,IE的位置: 電腦\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer 2. 通過註冊表讀取IE配置 3. 讀取IE的版本號 4. 獲取主版本號(8/9/10 etc.) ...
1. 註冊表中,IE的位置:
電腦\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer
2. 通過註冊表讀取IE配置
1 RegistryKey mainKey = Registry.LocalMachine; 2 RegistryKey subKey = mainKey.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer");
3. 讀取IE的版本號
1 var versionNumber = string.Empty; 2 if (subKey?.GetValue("svcVersion") is string svcVersion) 3 { 4 versionNumber = svcVersion; 5 if (string.IsNullOrWhiteSpace(versionNumber) && subKey.GetValue("svcUpdateVersion") is string svcUpdateVersion) 6 { 7 versionNumber = svcUpdateVersion; 8 if (string.IsNullOrWhiteSpace(versionNumber) && subKey.GetValue("Version") is string version) 9 { 10 versionNumber = version; 11 } 12 } 13 }
4. 獲取主版本號(8/9/10 etc.)
1 /// <summary> 2 /// 獲取IE主版本號 3 /// </summary> 4 /// <returns></returns> 5 public static string GetMajorVersion() 6 { 7 var majorVersion = string.Empty; 8 9 var detailVersion = GetDetailVersion(); 10 if (!string.IsNullOrWhiteSpace(detailVersion)) 11 { 12 if (detailVersion.IndexOf(".", StringComparison.Ordinal) is int connectedCharFirstIndex && connectedCharFirstIndex > -1) 13 { 14 majorVersion = detailVersion.Substring(0, connectedCharFirstIndex); 15 } 16 else 17 { 18 majorVersion = detailVersion; 19 } 20 } 21 22 return majorVersion; 23 } 24 25 /// <summary> 26 /// 獲取IE詳細版本號 27 /// </summary> 28 /// <returns></returns> 29 public static string GetDetailVersion() 30 { 31 //通過WebBrowser方案獲取版本號 32 //int mainVer = (new WebBrowser()).Version.Major; 33 34 //通過註冊表獲取用戶IE版本號 35 RegistryKey mainKey = Registry.LocalMachine; 36 RegistryKey subKey = mainKey.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer"); 37 38 var versionNumber = string.Empty; 39 if (subKey?.GetValue("svcVersion") is string svcVersion) 40 { 41 versionNumber = svcVersion; 42 if (string.IsNullOrWhiteSpace(versionNumber) && subKey.GetValue("svcUpdateVersion") is string svcUpdateVersion) 43 { 44 versionNumber = svcUpdateVersion; 45 if (string.IsNullOrWhiteSpace(versionNumber) && subKey.GetValue("Version") is string version) 46 { 47 versionNumber = version; 48 } 49 } 50 } 51 return versionNumber; 52 }