2010-03-08 16 views
5

Ich versuche, Process.Start zu verwenden, um eine lokale HTML-Datei im Standardbrowser zu starten.Process.Start (url) mit Anker in der URL

Eine Beispiel-URL ist wie folgt:

"file:///C:/Documentation/HelpContent/default_CSH.htm#SectionA/Topic1.htm" 

Problem ist, die "# sectiona/Topic1.htm" Bit wird aus irgendeinem Grund abgezogen, so dass diese Informationen nicht an den Browser übergeben wird. Es funktioniert jedoch gut für eine nicht-lokale URL.

Weiß jemand, wie ich das zur Arbeit bringen kann oder ist es eine Art vorbeugendes Sicherheitsproblem?

dank

+0

Die Adresse funktioniert, wenn Sie es in der Browser-Adressleiste einfügen? Versuchen Sie, das Zeichen/aus dem Anker-Label zu entfernen ... – munissor

+0

Ja, ich stimme zu. Es gibt zwei Dateinamen in dieser URL, die irgendwie seltsam sind. – jgallant

+0

Leider ist die/dort erforderlich - die URL ist so, weil sie Topic1.htm in einem anderen Frame startet (das ist WebHelp-Ausgabe von MadCap Flare) –

Antwort

4

Verwenden Process.Start auf iexplore.exe, so dass Sie die URL speziell als Argument angeben:

System.Diagnostics.Process.Start("iexplore.exe", @"file:///c:/dir/file.html#anchor"); 
+0

Danke - habe diese Methode vorerst verwendet. Wirklich muss ich in der Lage sein, es im Standardbrowser zu öffnen, anstatt mich auf IE zu beschränken. –

2

eine URL mit einem Anker in einem Browser, wenn Sie das Betriebssystem lassen sich Starten nicht funktionieren Bestimmen Sie den Standardbrowser. Die einzige Möglichkeit, dies zu erreichen, besteht darin, die ausführbare Datei des Browsers so zu spezifizieren, wie es für den IE für binarycoder geschrieben wurde. Es funktioniert genauso für Firefox.

Die beste Lösung ist offensichtlich, den Pfad zum Standardbrowser aus der Registrierung zu ermitteln und dann diese ausführbare Datei explizit aufzurufen.

+0

[Hier] (http://en.code-bude.net/2013/04/28/how-to-retrieve-default-browsers-path-in-c/) ist ein schöner Artikel, der Ihnen zeigt, wie Sie das bekommen Standard-Browserpfad von der Registrierung – Chris

Verwandte Themen