AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TWebBrowser, EdgeIfAvailable

Ein Thema von looseleaf · begonnen am 15. Feb 2024 · letzter Beitrag vom 19. Feb 2024
Antwort Antwort
looseleaf

Registriert seit: 25. Mai 2011
69 Beiträge
 
#1

AW: TWebBrowser, EdgeIfAvailable

  Alt 16. Feb 2024, 08:47
Ich wäre mir nicht sicher, ob das funktioniert.
Ich denke schon, denn das Abrufen von GetEdge erstellt die Instanz, wenn sie noch nicht existiert, wenn ich den Code richtig interpretiere.
[...]
Du hast zwar recht, dass das Control noch nicht fertig sein könnte, allerdings ist FEdge zu dem Zeitpunkt schon gesetzt. Aber auf der sicheren Seite bin ich wirklich mit dem OnBeforeNavigate...
Danke für den Hinweis.
  Mit Zitat antworten Zitat
Benutzerbild von gubbe
gubbe

Registriert seit: 8. Okt 2005
Ort: Schleswig-Holstein
172 Beiträge
 
Delphi 12 Athens
 
#2

AW: TWebBrowser, EdgeIfAvailable

  Alt 16. Feb 2024, 12:16

Ich denke schon, denn das Abrufen von GetEdge erstellt die Instanz, wenn sie noch nicht existiert, wenn ich den Code richtig interpretiere.
[...]
Du hast zwar recht, dass das Control noch nicht fertig sein könnte, allerdings ist FEdge zu dem Zeitpunkt schon gesetzt. Aber auf der sicheren Seite bin ich wirklich mit dem OnBeforeNavigate...
Danke für den Hinweis.
Ja, stimmt, GetEdge richtet bereits das Delphi-Control ein. Nur Deine Funktion "GetEdgeBrowser" würde nicht funktionieren, da ActiveEngine zunächst mit "NoneYet" initialisiert wird. Aber da Du die anscheinend gar nicht mehr verwendest und direkt GetEdge aufrufst, sollte alles schon in OnShow klappen.

Nur auf die Webview-Interfaces wie ICoreWebView2 kann man erst später zugreifen, wenn das Webview tatsächlich geladen wurde. Und es besteht noch die Gefahr, dass das Laden schiefgeht und als Fallback der IE geladen wird. Also sollte man den Rückgabewert von GetEdge nicht speichern.
Ist aber beides bei Deinem Code kein Problem.
  Mit Zitat antworten Zitat
looseleaf

Registriert seit: 25. Mai 2011
69 Beiträge
 
#3

AW: TWebBrowser, EdgeIfAvailable

  Alt 19. Feb 2024, 08:42
Ich wäre mir nicht sicher, ob das funktioniert.
Ich denke schon, denn das Abrufen von GetEdge erstellt die Instanz, wenn sie noch nicht existiert, wenn ich den Code richtig interpretiere.
[...]
Du hast zwar recht, dass das Control noch nicht fertig sein könnte, allerdings ist FEdge zu dem Zeitpunkt schon gesetzt. Aber auf der sicheren Seite bin ich wirklich mit dem OnBeforeNavigate...
Danke für den Hinweis.
Ah, hast Recht. Ich habe in meinem Code die Abfrage auf ActiveEngine schon rausgenommen, als immer gesetzt, egal, welche Endinge aktiv ist. Sofern die Instanz nicht nil ist.
Aber wir haben uns entschieden, langsam alle TWebBrowser-Instanzen gegen TEdgeBrowser zu tauschen. Die IE-Engine zeigt ohenhin beinahe nirgens mehr die korrekten Inhalte an.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz