Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Sie verwenden eine veraltete Browserversion (https://www.delphipraxis.net/191044-sie-verwenden-eine-veraltete-browserversion.html)

himitsu 2. Dez 2016 10:35

AW: Sie verwenden eine veraltete Browserversion
 
Zitat:

Zitat von nahpets (Beitrag 1355199)
Die so gemachte Änderung gilt nur für das Programm, dass sie durchführt, und nicht global.
Es ist also eine persönliche Einstellungsänderung. Also nur die Instanz des Webbrowsers in dem Programm, dass den Eintrag in der Registry vornimmt, gibt vor, diese Internetexplorerversion zu sein.

Aha, also wenn ich eine "user-globale" Einstellung in der Registry ändere, weiß Windows dass dieses nur für mein Programm gilt?

Wenn ich das manuell im Registry-Editor ändere, dann würde es dementsprechend also nur für den Registry-Editor gelten. :lol:

nahpets 2. Dez 2016 10:58

AW: Sie verwenden eine veraltete Browserversion
 
In der Registry steht in der entsprechenden Einstellung, dass sie für das entsprechende Programm gilt.

Wenn Du an der Stelle in der Registry also mal nachschaust, kannst Du dort eventuell auch noch Einstellungen anderer Programme finden.

WinAmp hat sich auf meinem Rechner dort z. B. mit der Version 8 eingetragen, AcroRd32.exe möchte lieber wie Version 8888 behandelt werden, ebenso wie Avira.Systray.exe.

Wenn Du also hergehst und in der Registry an der entsprechenden Stelle einen Eintrag vom Typ RegWord mit dem Namen RegEdit.exe und dem Wert 12345 einfügst, dann gilt für RegEdit die IE-Version 12345. Und nur für RegEdit. Andere Programme, ohne diesen Eintrag, werden bei der Benutzung des TWebBrowsers weiterhin mit der Meldung über eine veraltete Version "leben" müssen.

Es handelt sich hierbei um die Nutzung einer von Microsoft so vorgesehenen Schnittstelle für die explizit vom TWebBrowser im konkreten Programm zu emulierend IE-Version.

Nachzulesen (u. a.) unter: https://blogs.msdn.microsoft.com/ie/...-modes-in-ie8/

himitsu 2. Dez 2016 14:03

AW: Sie verwenden eine veraltete Browserversion
 
:oops: Ohh, da hatte ich den Code scheinbar falsch überflogen.
Mir war so, als wenn "FEATURE_BROWSER_EMULATION" der "einzige" Value war und da dann die Version rein kommt.


OK: Dann ist das natürlich für alle Programme, die genauo heißen.
Hoch lebe die Project1.exe :cheer:

Rued 4. Dez 2016 10:52

AW: Sie verwenden eine veraltete Browserversion
 
Zitat:

Zitat von nahpets (Beitrag 1355193)
Der TWebBrowser meldet sich als etwas veraltete Version bei den Servern.

Dem kann man eventuell durch einen Eintrag in der Registry abhelfen:
Delphi-Quellcode:
procedure IERegFake(sProgName : String; dwVersion :DWord);
var
          reg : TRegistry;
begin
  // 10001 = Version 10.0
  // 8000  = Version 8.0 Build = 86001
  // 7000  = Version 7.0
  reg := TRegistry.Create;
  reg.RootKey := HKEY_CURRENT_USER;
  reg.OpenKey('Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION',true);
  reg.WriteInteger(sProgName,dwVersion);
  reg.Free;
end;
Aufruf z. B.:
Delphi-Quellcode:
IERegFake(ExtractFileName(Application.ExeName),8000);
Hab' das inzwischen im Initialisierungsteil einer Unit, die ich in jedes Programm einbinde, das den TWebBrowser nutzt.

Hallo Stephan!

Bei mir hat hat es mit dem Wert 8000 nicht geklappt, wohl aber mit 80000. Den habe ich aus der Tabelle auf dieser Seite.

Danke Dir für den Hinweis!

Gruß

Rüd


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:50 Uhr.
Seite 2 von 2     12   

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