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;
KORJAUS asiaan - TWebBrowser emuloi oletuksena ikivanhaa IE 6.0:aa
2
393
Vastaukset
"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
Suomen kansa haluaa Antti Lindtmanista pääministerin
Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http1984008Vain 21% kannattaa Lindtmania pääministeriksi
se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?1112553Miten löydän sinut
Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit302174Yöllinen autolla kaahari Heinolan seudulla
Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?801380Vaikea tilanne
Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te861248- 481129
- 74996
- 56824
Emme koskaan keskustelleet kasvotusten syistä välirikollemme
Enkä voisi kertoa perimmäistä rehellistä syytä. Kerroin sinulle pintapuolisen ”paketin” ja otin tavallaan omalle vastuu57824S24 Lieksa miksi on paikallinen entinen Kansallinen Kokoomus valtuutettu sali niin kallis?
Vailla alennuksia? gogo express joensuu kertakäynti 10 euroa avoinna 5-24. Miksi pitää Lieksassa tukea paikallista yritt71784