Frage

Ich habe eine Windows-Anwendung, die das IE-WebBrowser-Steuerelement einbettet, und betreibt eine lokale Webserver Inhalt zu dienen. Die URLs ich lade in sind nur sinnvoll, innerhalb der Anwendung, und nicht gültig, nachdem die Anwendung beendet. Sie sind nie für den Benutzer sichtbar. Sie sehen aus wie folgt aus:

http://127.0.0.1:1234/something.html

wo 1234 ist eine zufällige Portnummer für diese Sitzung.

Aber diese URLs erscheinen die Adressleiste Geschichte des IE-Browser - wenn ich „1“ in Internet Explorer die Adressleiste eingeben, erscheint ein Drop-Down mit all meinen URLs in ihm. Sie sind nutzlos in diesem Zusammenhang.

Also, meine Frage ist: Wie kann ich verhindern, dass mein URLs, die Drop-Down-verschmutzenden

Etwas mehr Informationen:. Ich lade die URLs window.location.href = URL, anstatt über die Navigate Methode, so navNoHistory ist keine Option (und ich denke, dass auf die Back / Forward Geschichte bezieht sich sowieso)

Ich habe auch versucht die URLs nach der Tat zu löschen IUrlHistoryStg::DeleteUrl() verwenden, aber es funktioniert nicht (es Erfolg gibt aber keine Wirkung hat.) - alle Tipps auf, dass die Arbeit machen dankbar empfangen würde

War es hilfreich?

Lösung

ich jetzt diese Arbeit mit IUrlHistoryStg::DeleteUrl() gemacht habe - wenn Sie es nach Aufforderung der Steuerung sofort ruft eine URL zu laden, es funktioniert nicht. Ich vermute, das ist, weil die Steuerung nicht die URL der Geschichte hinzufügt, bis es fertig ist das Dokument geladen werden.

Mit dem IUrlHistoryStg::DeleteUrl() Aufruf später habe ich die URLs aus der Geschichte entfernen.

Ich würde immer noch lieber haben sie nicht in erster Linie bekommen dort, though.

Andere Tipps

Meine ursprüngliche Antwort war das genaue Gegenteil von dem, was man wollte.

Ich kann nicht replizieren, was Sie erleben, aber ich bin kein Browser Control verwendet wird.

Ich würde versuchen, ein Skript zu den HTML-Code oder einen versteckten Frame / iframe das Hinzufügen und den Anruf wickeln damit der Browser es in dem Wrapper-Skript ausgeführt wird.

Script basiert Navigates soll Geschichte nicht betreten, es dauerte eine Weile, mich mit einer Art und Weise zu kommen IE zu hacken, um tatsächlich Geschichte Artikel mit den Klick () Ereignisauslöser von meiner ursprünglichen Antwort hinzuzufügen.

<script>
    function GoTo(url) {
        location = url;
    }
</script>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top