KORJAUS asiaan - TWebBrowser emuloi oletuksena ikivanhaa IE 6.0:aa

delphikoodaaja

Kutsu allaolevaa SetIEMode -proseduuria vaikkapa pääformin OnCreate -tapahtumasta:

Uses
Registry, SysUtils;

procedure TfrmYoutubePlayer.FormCreate(Sender: TObject); // <------ esimerkki -->
begin
SetIEMode;
end;

Tämän pitäisi korjata asia.
HUOM: Korjaus on sovellusnimikohtainen.

Eli jos sinulla on Sovellus1.exe ja Sovellus2.exe
tulee allaolevaa SetIEMode -proseduuria kutsua molemmista.

Lisätietoja aiheesta:
https://weblog.west-wind.com/posts/2011/May/21/Web-Browser-Control-Specifying-the-IE-Version

Aiheesta OLI aiemmin viesti myös suomi24:ssä, vaan eipä ole enää (MIKSEI ???? ; Kuka poistelee viestejä täysin asiattomasti ? Onko sefiffioikeuksia annettu jollekulle palstahäirikölle, joka sabotoi Delphi -palstaa ?)

Toki on teoriassa mahdollista toteuttaa sama vaikkapa ICS:llä, INDY:llä, tai synapsella.
MUTTA: JOS et itse kontrolloi web -sivun koodia, niin joka kerta, kun web -sivu muuttuu, työmäärä noilla vaihtoehtoisilla tavoilla voi olla kohtuuttoman suuri. TWebBrowser -komponenttia käyttämällä työmäärä web -sivun muutoksiin reagoimiseksi on huomattavasti pienempi.

procedure SetIEMode;
const
IE_EmulationVersion = 11001; // Internet Explorer 11. Webpages are displayed in IE11 Standards mode, regardless of the !DOCTYPE directive.
KeyName = '\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION';

var
Reg : TRegistry;
ExeName : String;

begin
ExeName := ExtractFileName(ParamStr(0));
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CURRENT_USER;
if Reg.OpenKey(KeyName, True) then begin
// OK:
Reg.WriteInteger(ExeName, IE_EmulationVersion);

end ELSE begin
// Tapahtui virhe yritettäessä avata/luoda rekisteriavainta.

end;
finally
Reg.Free;
end;
end;

2

262

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • "Aiheesta OLI aiemmin viesti myös suomi24:ssä, vaan eipä ole enää (MIKSEI ???? ; Kuka poistelee viestejä täysin asiattomasti ?"

      Epäilen robottia.

      "MUTTA: JOS et itse kontrolloi web -sivun koodia, niin joka kerta, kun web -sivu muuttuu, työmäärä noilla vaihtoehtoisilla tavoilla voi olla kohtuuttoman suuri. TWebBrowser -komponenttia käyttämällä työmäärä web -sivun muutoksiin reagoimiseksi on huomattavasti pienempi."

      Nyt meni ohitse mitä tarkoitat tuolla työmäärällä sivun muutoksiin reagoimiseksi?

      Minusta tässä nyt on isompana ongelmana se, että komponentti on 5v takainen IE11 ja vuoden kuluttua vanhimmat siitä riippuvaiset laitteet ovat hävinneet. Desktop puolella se alkoi jo homehtumaan 2,5v sitten.

      Tarkoittaa sitä, että se on niin vanha voi tulla ongelmia sen takia.

      Suosittelen hävittämään sen IE11 komponentin pois ja ottaa tilalle CEF:n, eli Chromium Embedded Frameworkin: https://en.wikipedia.org/wiki/Chromium_Embedded_Framework

    • Anonyymi

      Hienoa, että tuonkin ongelman pystyy jotenkin korjaamaan!

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa

      En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod
      Ikävä
      22
      5194
    2. Huomenta ihana

      Kauniskasvoinen ihanuus 😘 saan sut vielä
      Ikävä
      25
      4378
    3. Hei rakas...

      Miten on työpäivä sujunut? Rakastan sinua 💗
      Ikävä
      27
      2501
    4. Edelleen sitä on vaikea uskoa

      Että olisit oikeasti rakastunut muhun
      Ikävä
      34
      2264
    5. Toiveikas vai toivoton

      torstai? Ajatuksia?
      Ikävä
      37
      1998
    6. Vitsi mihin menit. Heti takasin.

      Mä näin sut tuu takasin! Oli kiire, niin en ehtiny sin perään!
      Ikävä
      15
      1918
    7. En ole koskaan kokenut

      Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka
      Ikävä
      19
      1607
    8. Mukavaa päivää

      Mun rakkauden kohteelle ❤️ toivottavasti olet onnellinen
      Ikävä
      12
      1531
    9. Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...

      Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons
      Suomalaiset julkkikset
      21
      1267
    10. Kerranki asiat oikein

      Ilkka ja muut pienpuolueeet...teitte hyvän työn kun valitsitte pätevän henkilön virkaan eikä kepulle passelia!! Jatkakaa
      Haapavesi
      10
      1174
    Aihe