Récupérer le navigateur par défaut

Soyez le premier à donner votre avis sur cette source.

Contenu du snippet

public static string GetDefaultBrowserFileName() {
  return GetDefaultBrowserFileNameForHTTP();
}
public static string GetDefaultBrowserFileNameForHTTP() {
  return GetDefaultBrowserFileName("http");
}
public static string GetDefaultBrowserFileNameForHTTPS() {
  return GetDefaultBrowserFileName("https");
}
public static string GetDefaultBrowserFileNameForFTP() {
  return GetDefaultBrowserFileName("ftp");
}
private static string GetDefaultBrowserFileName(string protocol) {
  string browserFileName = string.Empty;
  string progId = string.Empty;
  RegistryKey key;
  object val;
  key = Registry.CurrentUser.OpenSubKey(@"\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\" + protocol + @"\UserChoice", false);
  if (key != null) {
    val = key.GetValue("Progid");
    if (val != null)
      progId = val.ToString();
  }
  if (!string.IsNullOrEmpty(progId))
    key = Registry.ClassesRoot.OpenSubKey(progId + @"\shell\open\command", false);
  if (string.IsNullOrEmpty(progId) || key == null)
    key = Registry.ClassesRoot.OpenSubKey(@"\" + protocol + @"\http\shell\open\command", false);
  if (key != null) {
    val = key.GetValue(string.Empty);
    if (val != null) {
      var match = Regex.Match(val.ToString(), "(\".*?\")");
      if (match.Success)
        browserFileName = match.Captures[0].Value.Trim('"');
    }
  }
  return browserFileName;
}

Imprimer   E-mail

Ajouter un Commentaire


Code de sécurité
Rafraîchir