Laden...

Refresh an IE-Prozess senden

Erstellt von serial vor 11 Jahren Letzter Beitrag vor 11 Jahren 1.244 Views
S
serial Themenstarter:in
902 Beiträge seit 2007
vor 11 Jahren
Refresh an IE-Prozess senden

Hallo,

ich haabe zur Laufzeit einen Process gestartet, welcher den IE öffnet. Nun möchte ich ein refresh an den geöffneten IE schicken, damit er die Seite neu lädt. Entweder seh ich den Wald vor lauter Bäumen nicht, aber ich habe noch keine Lösung gefunden.

Kann mir jemand helfen.

folgender Code:


 private  void OpenIE()
        {
            if (!String.IsNullOrEmpty(data))
            {
                if (String.IsNullOrEmpty(_file))
                {
                    _file = Path.GetTempFileName();
                    _file = Path.ChangeExtension(_file, "html");
                }
                File.WriteAllText(_file, data);
                if(_p==null)
                     _p = Process.Start(_file);
                else
                    //hier nur ein refresh senden, keinen neuen IE öffnen

            }
        }

danke
serial

3.170 Beiträge seit 2006
vor 11 Jahren

Hallo,

Du könntest es versuchen ,wie in Refresh browser's page programmatically, from a .Net WinForms application, und Dir ggf. FindWindow zu sparen und stattdessen MainWindowHandlle Deines Prozesses zu benutzen.

Aber warum eigentlich ein IE, und nicht ein WebBrowser (Forms)- bzw. WebBrowser (WPF)- Control? Da hättest Du's viel einfacher. Das bringt sogar schon eine eigene Refresh-Methode mit 😃

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

S
serial Themenstarter:in
902 Beiträge seit 2007
vor 11 Jahren

Hallo MarsStein,

ich bekomme in einem Webbrowser-Control Javascriptfehler, welche mit dem gleichen HTML weder im IE, FF,Opera oder Chrome auftreten. Darum habe ich mich davon erstmal verabschiedet, da ich keine Ansatzpunkte zur Behebung der JS-Fehler habe. (das HTML ist nicht von mir erzeugt, hat aber wie gesagt in allen anderen Browsern keine Fehler, nur in dem Control)

Wenn du dazu einen Tipp hast, gern 😃

mfg
serial

2.891 Beiträge seit 2004
vor 11 Jahren

ich bekomme in einem Webbrowser-Control Javascriptfehler,

Was genau bedeutet das für deine Anwendung? Funktioniert die angezeigte Seite nicht richtig oder stören nur die Meldungen? Das WebBrowser-Control hat auch eine Einstellung, Scriptfehler nicht anzuzeigen (WebBrowser.ScriptErrorsSuppressed).

S
serial Themenstarter:in
902 Beiträge seit 2007
vor 11 Jahren

Hallo,

leider funktioniert dann die Seite nicht.
Welche JS-Engin benutzt denn das Control? Bzw kann man da noch irgendwie Kontrolle übernehmen?
Denn in allen Browsern bringt das selbe HTML keinen Fehler.

mfg
serial

16.807 Beiträge seit 2008
vor 11 Jahren

.NET schiebt nur nen Wrapper über den installierten IE (steht auch in der MSDN).
Alternativen findet man sehr einfach übel Google. Replacing .NET WebBrowser control with a better browser, like Chrome?

S
serial Themenstarter:in
902 Beiträge seit 2007
vor 11 Jahren

hei danke.

Wenn wirklich nur nen wrapper drüber ist, wieso bringt das control einen JS-Fehler, wohin der IE den nicht bringt?

mfg
serial

76 Beiträge seit 2008
vor 11 Jahren

Weil die Anzeige von Fehlern im Browser abgeschaltet ist, während es im .NET-Control standardmäßig eingeschaltet ist.

Du kannst es einfach abschalten.

Zum Wrapper: Du kannst ja testen, ob es die selben Elemente sind, indem du einen Rechtsklick machst. Da siehst du in beiden Fällen ein identisches Menü.