Forum: PC-Programmierung C# start Browser with URL


von Flo (Gast)


Lesenswert?

Hallo Community,

ich bin auch der Suche für eine Lösung für folgende Aufgabe.
Ich möchte aus einem C# Programm einen Browser öffnen und diesem eine 
url mitgeben, welche geöffnet werden soll.

z.B. index.htm

Hierfür habe ich folgende .net Klasse/Methoden gefunden:

System.Diagnostics.Process.Start-Methode: (String)
bzw.
System.Diagnostics.Process.Start-Methode: (String, String)

Das funktioniert auch wunderbar. Hierbei wird der Browser geladen, 
welcher als Standard-Browser definiert wurde. Super passt.

Wie bekomme ich jedoch hin, dass der Browser nun an eine bestimmte 
Stelle/Seite unterhalb von index.htm spricht

z.B. index.htm#Unterkapitel

Weiß jemand hierfür eine Lösung/Rat?

Vielen Dank schon einmal.
Gruß Flo

von Flo (Gast)


Lesenswert?

Hallo,

weiß jemand von euch, wie das oben beschriebene Problem zu lösen ist, 
ohne auf das WebBrowser-Control und dessen Methode Navigate() benutzen 
zu müssen.

Vielen Dank.
Gruß Flo

von Arc N. (arc)


Lesenswert?

Auf der Kommandozeile funktioniert
1
start https://en.wikipedia.org/wiki/Microcontroller#See_also

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Flo schrieb:
> Hierbei wird der Browser geladen,
> welcher als Standard-Browser definiert wurde. Super passt.
Das heißt:
Der Nutzer kann nicht wählen, ohne seine Standardeinstellungen zu 
ändern?

Geht bei mir übrigens auch:
1
System.Diagnostics.Process.Start("https://en.wikipedia.org/wiki/Microcontroller#See_also");

von Flo (Gast)


Lesenswert?

Hallo,

vielen Dank für die Antworten.
Eure oben beschriebenen Beispiel kenne ich schon und funktionieren auch.

Ich war wohl mit meiner Formulierung nicht präzise genug.
Folgendes:
Ich möchte eine lokale (auf meiner Festplatte) index.htm mit dem 
Standard-Browser aus C# heraus öffnen und nun an eine bestimmte Seite 
springen. Diese Seite liegt unterhalb von index.htm in einem Ordner, 
z.B. Content\Unterkapitel.htm.

Wie lautet nun der Aufruf des Browser

index.htm#/Content/Unterkapitel.htm

oder ähliches???

Wäre super, falls jemand eine Lösung hätte.

Gruß Flo

von Bernd H. (geeky)


Lesenswert?

Wenn du nicht direkt die Unterkapitel.htm über dessen URL aufrufen 
kannst/willst, wirst du in der index.htm vermutlich noch Framesets 
einsetzen?
Dann könntest du via JS in der index.htm einen Anker wie "#unterkapitel" 
abfangen und im entsprechenden Frame daraufhin die Unterkapitel.htm in 
den gewünschten Frame laden.

von c.m. (Gast)


Lesenswert?

Flo schrieb:
> Wäre super, falls jemand eine Lösung hätte.

seiteninterne verweise, html grundlagen, hab stundenlang gegoogelt bis 
ich das ergebnis hatte.
https://wiki.selfhtml.org/wiki/HTML/Regeln/Seiteninterne_Verweise#Sprungmarken_und_Anker

von Flo (Gast)


Lesenswert?

Hallo,

vielen Dank. Für die Antworten.
Ich habe leider keinen Einfluss auf die entsprechenden html-Dateien, 
sprich ich kann hier nichts einsetzen oder der gleichen.

Ich muss wohl erst einmal damit leben und nach einer anderen Lösung 
umschauen, wie z.B. C# Chromium oder GeckoFx.

Trotzdem danke und ein schönes Wochenende.

Gruß Flo

von Michael R. (Firma: Brainit GmbH) (fisa)


Lesenswert?

Flo schrieb:
> Ich muss wohl erst einmal damit leben

ich glaub ich hab dein Problem nicht verstanden... funktioniert das "zu 
Fuß", also ohne C#, hast du eine URL welche, wenn im Browser eingetippt, 
dich zum gewünschten Ziel führt?

von Lutz H. (luhe)


Lesenswert?

Um das Netz zu ärgern??
using System.Net;
using System.Threading;

namespace dauerladen
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window

    {
        WebClient wClient = new WebClient();
        public MainWindow()
        {
            InitializeComponent();

            for (int zz = 1; zz < 214; zz++)
            {

                String strSource = wClient.DownloadString(" 
http://www.on4lea.be/termine.htm";);
                Thread.Sleep(100);
            }
        }
    }
}

von Strangtinga (Gast)


Lesenswert?

Torsten C. schrieb:
> Der Nutzer kann nicht wählen, ohne seine Standardeinstellungen zu
> ändern?

Warum sollte er? Das ist doch der Sinn von Standardanwendungen.

von Dirk K. (merciless)


Lesenswert?

Ob das nach 4,5 Jahren noch jemanden interessiert?

merciless

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.