Laden...

WebBrowser-Control: Navigate: Aus relativem Pfad den richtigen absoluten Pfad machen

Erstellt von fLor1aX vor 13 Jahren Letzter Beitrag vor 13 Jahren 2.482 Views
Thema geschlossen
F
fLor1aX Themenstarter:in
8 Beiträge seit 2010
vor 13 Jahren
WebBrowser-Control: Navigate: Aus relativem Pfad den richtigen absoluten Pfad machen

Hallo,

ich bin gerade an einem Projekt dran mit 2 anderen. Die OnlineHilfe (Browser) haben wir mit Adobe Dreamweaver erstellt und mit folgendem Code in unser C# Projekt eingebunden.

     public FormBrowser()
        {
            string path = Application.StartupPath;
            Debug.WriteLine(path);
            Debug.WriteLine(path);
            homePageUrl = path + @"/Help/HomeScreen.html";

            InitializeComponent();
            webBrowser.Navigate(new Uri(homePageUrl));
       }

Hiermit versuche ich den relativen Pfad meiner HomepageStartseite anzugeben. Jedoch funktioniert dies nicht. Nicht auf meinem PC, sowohl als auch auf anderen.

Mein Projektunterstützer findet den Fehler ebenfalls nicht.

Wäre euch dankbar wenn ihr eine Lösung hättet.

mfg

C#

49.485 Beiträge seit 2005
vor 13 Jahren

Hallo fLor1aX,

du übergibst doch gar keinen relativen Pfad, auch wenn du natürlich besser Path.Combine verwenden solltest und dir möglicher Probleme mit Application.StartupPath bewusst sein solltest: [FAQ] Pfad zur eigenen Anwendung (EXE) ermitteln.

Davon abgesehen würde ich mal gucken, was new Uri überhaupt aus deinem Pfad macht. Wird da wirklich file:/// draus?

herbivore

F
fLor1aX Themenstarter:in
8 Beiträge seit 2010
vor 13 Jahren

Hallo herbivore,

jedoch verstehe ich das gesamte Konzept nicht. Mein Ordner mit den sämtlichen Dateien etc. liegt auf der gleichen Ebene wie mein C# Projekt. Das einzige was ich aufrufen muss ist die index.html - anschließend bekomm ich somit die restlichen Seiten,Bilder etc.

Da der gesamte Ordner, der diese beiden Ordner beinhaltet, IRGENDWO liegen kann, muss ich nur den Pfad vor dem Ordner angeben.

        string getpath = Application.StartupPath;
            string path = getpath + @"/index.html";

mit Application.StartupPath finde ich den Pfad der EXE heraus. Der ist aber im Ordner von meinem Projekt und somit nicht auf gleicher Ebene wie meine "OnlineHilfe".

Mit StartupPath finde ich also den Pfad der exe heraus - wie komme ich nun aber zu meinem gewünschten Pfad, dort wo meine index.html ist heraus?

Tut mir Leid für diese Anfängerfragen, jedoch habe ich sowas noch nie verwendet.

C#

49.485 Beiträge seit 2005
vor 13 Jahren

Hallo fLor1aX,

Tut mir Leid für diese Anfängerfragen, ...

mit einem einfachen "tut mir Leid" kannst du dich aber bitte nicht über [Hinweis] Wie poste ich richtig? Punkt 1.1.1 hinwegsetzen. Zumal deine Beschreibung immer noch nicht so richtig eindeutig ist. Aber ich meine rausgelesen zu haben, dass du "../" benötigst. Den Rest musst du wirklich alleine hinbekommen.

Nochmal: Verwende Path.Combine.

herbivore

Thema geschlossen