AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Darstellungsfehler im Twebbrowser

Darstellungsfehler im Twebbrowser

Offene Frage von "Jonas"
Ein Thema von froschprinz · begonnen am 1. Jul 2014 · letzter Beitrag vom 23. Apr 2016
Antwort Antwort
froschprinz

Registriert seit: 24. Dez 2010
Ort: Graben, Bayern
34 Beiträge
 
Delphi 7 Architect
 
#1

AW: Darstellungsfehler im Twebbrowser

  Alt 1. Jul 2014, 08:48
Hallo,

danke für Deine Antwort.
Ich glaube du meint da hier:http://weblog.west-wind.com/posts/20...the-IE-Version. Ich habe es probiert, kann aber keinen Unterschied feststellen.
Irgendwie muss es doch möglich sein, mit Delphi Webseiten vernünftig anzeigen zu lassen?
Ulli
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Darstellungsfehler im Twebbrowser

  Alt 1. Jul 2014, 11:17
Z.B. mit Chromium embedded
https://code.google.com/p/dcef3/
Markus Kinzler
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Darstellungsfehler im Twebbrowser

  Alt 1. Jul 2014, 12:40
- Bitte löschen -
  Mit Zitat antworten Zitat
froschprinz

Registriert seit: 24. Dez 2010
Ort: Graben, Bayern
34 Beiträge
 
Delphi 7 Architect
 
#4

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 07:26
Hallo,
ich habe nach viel rumprobieren selber eine Lösung gefunden, die herforragend funktioniert. Eigentlich sollte jeder, der noch TWebbrowser benutzt, standartmäßig SetWebbrowserMode(11,'MeineAnwendung.exe'); setzen. Dann werden die Seiten perfekt dargestellt.
Bitte nicht vergessen, dass dazu Admin-Rechte nötig sind!
Übrigens: Auch wenn kein Internetexplorer 11 installiert ist, so führt der Aufruf SetWebbrowserMode(11) dennoch zum Erfolg, da dann der nächst-niedrigere Internetexplorer verwendet wird.
Funktioniert sowohl bei 32Bit als auch bei 64Bit, da Windows automatisch umleitet.

Delphi-Quellcode:
function SetWebbrowserMode(Mode: integer; AppName: string = ''):boolean;
const
  REG_KEY = 'SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION';
var
  Reg: TRegistry;
  Value: Integer;
  Erfolg:boolean;
begin
  Erfolg:=false;
  if AppName = 'then
    AppName := ExtractFileName(Application.ExeName);
  Case Mode of
    7 : Value := $1B58;
    8 : Value := $22B8;
    9 : Value := $270F;
    10 : Value := $2AF7;
    11 : Value := $2EDF;
  end;
  Reg := TRegistry.Create(KEY_ALL_ACCESS);
   try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey(REG_KEY, True) then
    begin
      Reg.WriteInteger(AppName, Value);
      Reg.CloseKey;
      erfolg:=true;
    end;
  finally
    Reg.Free;
    Result:=Erfolg;
  end;
end;
Beispielaufruf:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
 if not SetWebbrowserMode(11,'MeineAnwendung.exe')then showmessage('Sie haben keinen Schreibzugriff auf die Registrierungsdatenbank. Bitte informieren Sie Ihren Administrator');
end;
Ulli
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 08:37
Da wird intern nichts anderes gemacht als in http://weblog.west-wind.com/posts/20...the-IE-Version beschrieben.
Die Registry sollte durch den Installer geändert werden, Du musst den Eintrag nur einmal hinzufügen und nicht jedesmal.
  Mit Zitat antworten Zitat
froschprinz

Registriert seit: 24. Dez 2010
Ort: Graben, Bayern
34 Beiträge
 
Delphi 7 Architect
 
#6

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 09:09
Hi,

klar, durch die http://weblog.west-wind.com/posts/20...the-IE-Version bin ich ja auch drauf gekommen. Ich wollte nur gleich die fertige Funktion mitliefern, falles sie mal ein anderer benötigt.

Klar ist auch, dass dies nur bei der Installation durch den Installer gamacht werden muss/sollte. Meine Anwendung ist aber bereits seit Jahren beim Kunden installiert. Die Updates verteile ich ohne Installer - sondern nur die Exe. Deshalb lasse ich die Exe einmal prüfen, ob die Einstellung schon erfolgt ist. Wenn nicht biete ich eine Taste, die dann die obige Routine ablaufen lässt.

Aber trotzdem vielen Danke für Deine berechtigten Hinweise.
Ulli
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 09:13
Spar Dir die Arbeit

http://www.delphipraxis.net/175520-e...uer-xe4-5.html
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#8

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 09:22
Ich hab solche Probleme auch mit Chromium embedded gelöst und parallel/alternativ die Anzeige im externen Standard-Browser.

Nja, zuletzt nutzten alle den Externen und wir bauten Chromium embedded wieder aus (auskommentiert und DLLs entfernt) und stattdessen ist der interne TWebBrowser nur noch als teilweise funktionierendes Notfallsystem drin, falls der Externe mal rumzickt.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 09:27
Ich habe mit Chromium rumprobiert und kann ehrlich gesagt nicht nachvollziehen, wieso den manche heiß empfehlen. Er bläht das Setup um locker 30-35 MByte auf, die EXE startet langsamer (erstellen vom Chromium Objekt) und ich hatte massiv Probleme mit dem Ding (Absturz). Der IE ist auf 99% aller Systeme, ich muss nichts mit-installieren und er kennt 1-2 Events mehr, die ich gerne nutze. Bin (leider) von ab, er hatte seine Chance.

Just my 2 Cent.
  Mit Zitat antworten Zitat
froschprinz

Registriert seit: 24. Dez 2010
Ort: Graben, Bayern
34 Beiträge
 
Delphi 7 Architect
 
#10

AW: Darstellungsfehler im Twebbrowser

  Alt 3. Jul 2014, 09:32
mir ging es mit Chromium ebenso!

Den EmbeddedWB habe ich ebenfalls ausprobiert. Und der hatte exact die gleiche verschobene Darstelllung wie der TWebbrowser.
Auf einen Standartbrowser kann ich auch nicht zurückgreifen, da die Software im öffentlichen Bereich läuft und ich das freie Serven unterbinden möchte. Des weiteren wird die Darstellung (barrierefrei) für Menschen mit Berhinderungen angepasst. Ich habe keine Ahnung, wie ich das alles mit einem Standartbrowser machen soll???
Ulli

Geändert von froschprinz ( 3. Jul 2014 um 09:42 Uhr)
  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 10: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