Entwickler-Ecke

Internet / Netzwerk - JavaScript-Fehler im TWebBrowser vermeiden


Gagga - Mi 11.01.23 16:22
Titel: JavaScript-Fehler im TWebBrowser vermeiden
Hallo!

Ich lade die Seite https://www.trotto.de/index.htm in den WebBrowser, der mit den zahlreichen Scripten der Seite nicht klarkommt (Beispiel für Fehlermeldung im Anhang). Wie helfe ich der Komponente? Silent = true ist keine Lösung, da die Scripte ausgeführt werden müssen.

Gruß
Gagga


Ralf Jansen - Mi 11.01.23 17:15

Wie alt ist dein Delphi? TWebBrowser benutzt den Internet Explorer und eigentlich erstellt niemand mehr IE kompatible Webseiten (viel zu viel Aufwand).
Das dort benutzt JQuery hat bestimmt auch schon lange IE Support aufgegeben.

Aktuelle Delphis scheinen einen Edge basierten Browser zu haben der "kompatibler" sein sollte. Siehe z.b. https://docwiki.embarcadero.com/Libraries/Sydney/en/Vcl.Edge.TEdgeBrowser


jaenicke - Mi 11.01.23 17:39

In aktuellen Delphiversionen (auch in der kostenlosen Community Edition) kann man im TWebBrowser einfach die SelectedEngine umstellen (nur IE wie bisher, nur Edge oder Edge wenn verfügbar).


Gagga - Mi 11.01.23 18:08

Ich habe Delphi 2010 Professional und scheue mich, auf eine neuere Version umusteigen, da ich immer enorme Zeit brauche, um die Umgebung so hinzubekommen, dass ich an meinen Programmen arbeiten kann.

Kann mir einer den Gefallen tun und testen, ob besagte Seite in der TWebBrowser-Komponente einer neueren Version problemlos klappt?

Hintergrund ist, dass ich u.a. die Checkboxen aus meinem Programm ansteuern will.

Gruß
Rüdiger


jaenicke - Mi 11.01.23 19:10

user profile iconGagga hat folgendes geschrieben Zum zitierten Posting springen:
Hintergrund ist, dass ich u.a. die Checkboxen aus meinem Programm ansteuern will.
Das geht mit der Edge Variante natürlich ganz anders. Du kannst z.B. JavaScript Quelltexte ausführen.

Die Webseite sieht dort nicht anders aus als in jedem modernen Browser. Das ist die gleiche Engine wie bei Edge oder Chrome, was beim alten IE-Control mit der alten IE-Engine ja genau das Problem ist.

user profile iconGagga hat folgendes geschrieben Zum zitierten Posting springen:
Ich habe Delphi 2010 Professional und scheue mich, auf eine neuere Version umusteigen, da ich immer enorme Zeit brauche, um die Umgebung so hinzubekommen, dass ich an meinen Programmen arbeiten kann.
Je länger man sich da Zeit lässt, desto schwerer hat man es. Ich erstelle und installiere meine Umgebung z.B. komplett per Skript von den JEDI-Komponenten abgesehen. Dadurch kann ich recht schnell auf eine neue Version gehen.


GuaAck - Mi 11.01.23 20:07

Hallo,

ich kann den Tipp von jaenicke voll unterstützen. Vor gut einem Jahr bin ich von Delphi 7 auf Delphi 10 umgestiegen. Entgegen aller Befürchtungen ging das erstaunlich reibungslos. Im Quelltext war lediglich die Umstellung auf Unicode zu machen. Dann gab es noch einzelne Fehlermeldungen, die aber immer schnell behoben waren. Allerdings müssen auch alle verwendeten UNITs neu übersetzt werden. War alles etwas Arbeit, dafür bin ich aber jetzt auch auf dem aktuellen Stand. Es hängt wohl auch sehr von den verwendeten Komponenten ab, wie schwierig es ist.

Lade doch mal die Community-Edition von Delphi 10.4 und passe mal versuchsweise ein Projekt an. Dann siehst Du schnell, was klemmt.

Gruß
GuaAck


Gagga - Do 12.01.23 11:40

user profile iconGuaAck hat folgendes geschrieben Zum zitierten Posting springen:
Lade doch mal die Community-Edition von Delphi 10.4 und passe mal versuchsweise ein Projekt an. Dann siehst Du schnell, was klemmt.

Die Community-Edition habe ich gestern Nachmittag bereits installiert, jedoch wurde die per E-Mail übermittelte Seriennummer nicht akzeptiert. Bin dann erst `mal entnervt zum "Griechen" gefahren. Muss sehen, wann ich mich damit erneut befasse. Das hält alles so tierisch auf...

Moderiert von user profile iconTh69: Vollzitat editiert.