WebBrowser-Control: JavaScript-Aktionen abfangen

s3rvus

Grünschnabel
hallo,
ich suche derzeit nach einem weg, im webbrowser-control javascript-aktionen der derzeit angezeigten html-seite (speziell alert()) abzufangen und in meiner "rahmenanwendung" anderweitig zu verarbeiten.

habe dazu schon die möglichkeit ausprobiert, beim event webbrowser_navigated mit webbrowser.documentText im html-code der derzeit angezeigten seite z.b. alle "alert(" durch "window.external.my_new_alert(" zu ersetzen, der erfolg davon hängt jedoch vom zufall ab, da wenn diese ersetzung durchgeführt wird, wenn die html-seite noch nicht komplett geladen ist, dann wird sie dies auch nicht mehr. wird sie jedoch erst danach durchgeführt, werden die alert()s ja schon normal durchgeführt.

mein alternativer plan wäre (zumindest temporär) das javascript auszuschalten (wobei ich auch noch nichts gefunden habe, ob und wie das geht), jedoch benötigen ja einige webseiten das javascript schon zum aufbau der seite, also fällt das wohl auch weg.

es müsste irgendeinen weg geben, den html-code beim laden just-in-time zu durchsuchen und an den nötigen stellen ersetzungen durchzuführen.
oder: irgendwie an den anfang jeder html-seite, die geladen wird (jedoch nicht erst wenn sie geladen ist) javascript-code einzufügen. so könnte man nämlich z.b. die alert-funktion mit einer window.external ersetzen.

vielleicht hat einer von euch zu meinem (wie immer ungewöhnlichen) problem eine idee.
danke,
s3rvus
 
ok, habs gelöst:
ich stoppe den webbrowser, wenn er navigieren will,
lade dann die gewünschte html-seite herunter, speichere sie als string und füge am anfang den gewünschten code hinzu, dann lasse ich sie mit webbrowser.document.write anzeigen...
s3rvus
 
Zurück