private static CTM_WebBrowser findFirefoxBrowser() { CTM_WebBrowser browser = new CTM_WebBrowser(); browser.setInternalName("firefox"); browser.setPrettyName("Mozilla Firefox"); browser.setProcessName("firefox"); String versionData = null; // Windows 7 Compatibility. String appManifestFile = CTM_WebBrowser_Factory.findFirefoxBrowserApplicationManifest(); if (versionData == null && appManifestFile != null) { // Version=3.6.12 CTM_Ini appManifest = new CTM_Ini(appManifestFile); versionData = appManifest.ReadValue("App", "Version"); } RegistryKey dkey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Mozilla\\Mozilla Firefox"); if (versionData == null && dkey != null) { versionData = dkey.GetValue("CurrentVersion").ToString(); } if (versionData != null) { Regex versionRegex = new Regex(@"(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)"); Match versionMatch = versionRegex.Match(versionData); if (versionMatch != null) { browser.setIsAvailable(true); browser.setMajor(Convert.ToInt32(versionMatch.Groups["major"].Value)); browser.setMinor(Convert.ToInt32(versionMatch.Groups["minor"].Value)); browser.setPatch(Convert.ToInt32(versionMatch.Groups["patch"].Value)); } } return browser; }
private static CTM_WebBrowser findIEBrowser() { CTM_WebBrowser browser = new CTM_WebBrowser(); browser.setInternalName("iexplore"); browser.setPrettyName("Internet Explorer"); browser.setProcessName("iexplore"); RegistryKey dkey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Internet Explorer"); if (dkey != null) { string bVersion = dkey.GetValue("Version").ToString(); if (bVersion != null) { Regex versionRegex = new Regex(@"(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)"); Match versionMatch = versionRegex.Match(bVersion); if (versionMatch.Success) { browser.setIsAvailable(true); browser.setMajor(Convert.ToInt32(versionMatch.Groups["major"].Value)); browser.setMinor(Convert.ToInt32(versionMatch.Groups["minor"].Value)); browser.setPatch(Convert.ToInt32(versionMatch.Groups["patch"].Value)); } } } return browser; }