używam tego, aby uzyskać ścieżkę i plik wykonywalny z domyślnej przeglądarce internetowej:Otwórz plik HTML za pomocą domyślnej przeglądarki internetowej
public static string DefaultWebBrowser
{
get
{
string path = @"\http\shell\open\command";
using (RegistryKey reg = Registry.ClassesRoot.OpenSubKey(path))
{
if (reg != null)
{
string webBrowserPath = reg.GetValue(String.Empty) as string;
if (!String.IsNullOrEmpty(webBrowserPath))
{
if (webBrowserPath.First() == '"')
{
return webBrowserPath.Split('"')[1];
}
return webBrowserPath.Split(' ')[0];
}
}
return null;
}
}
}
oraz:
protected static bool Run(string FileName, string Args)
{
try
{
Process proc = new Process();
processInfo.FileName = FileName;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
if(Args != null) proc.StartInfo.Arguments = Args;
proc.Start();
return true;
}
catch (Exception) { }
return false;
}
Potem zadzwonić do przeglądarki internetowej: Run(DefaultWebBrowser, "foo.html")
Pytanie brzmi: Mam problem, powyższa funkcja wywołuje firefox i IE (dwie przeglądarki zainstalowane na moim komputerze) zamiast Internet Explorera, domyślnej przeglądarki internetowej. Nie mam pojęcia, jak to naprawić. Każda pomoc jest bardzo doceniana. Z góry dziękuję.
EDIT
I pobraniu i zainstalowaniu Google Chrome, ustawić ją jako domyślną przeglądarkę internetową, ale dziwnie powyższy błąd nie dzieje się z nim.
Próbowałem. Ale w niektórych plikach .htm/.html nie są otwierane za pomocą przeglądarki internetowej. rozszerzenia .htm/.html mogą być na przykład powiązane z edytorem tekstu lub IDE. – Jack
Chociaż domyślny program _can_ może zostać zmieniony, nie powinieneś mieć problemu. Zobacz [to] (http://support.microsoft.com/kb/224816), aby uzyskać wskazówki dotyczące używania 'ShellExecute' do uruchamiania domyślnej przeglądarki internetowej, a także ścieżek dla niektórych kluczy rejestru (które prawdopodobnie już wiesz z). W końcu użytkownik może najprawdopodobniej interweniować, zmieniając niektóre domyślne programy ... ale nie powinieneś martwić się tym zbytnio, ponieważ jest to nieuniknione do pewnego stopnia. – Spooky
Jak powiedział Jack, to okropny pomysł. Osobiście posiadam edytor ustawiony jako domyślna aplikacja do otwierania plików HTML i denerwuje mnie to, że programy nie otwierają pliku readme w tym edytorze zamiast domyślnej przeglądarki. Różnica między "domyślną przeglądarką" i "domyślną aplikacją do otwierania kodu HTML" w systemie Windows. – Nyerguds