gmlib_v1 icon indicating copy to clipboard operation
gmlib_v1 copied to clipboard

GMLib 1.5.5 Rio have stopped working

Open vpapanik opened this issue 3 years ago • 45 comments

Hello,

All programs using GMLib 1.5.5 have stopped working (including MegaDemo). The error message is

image

image

Is there any way to fix this problem ?

vpapanik avatar Feb 22 '22 10:02 vpapanik

I also tried to compile it with TChromium, but it cannot be compiled with its latest version.

vpapanik avatar Feb 22 '22 15:02 vpapanik

I Got the same error. 1.5.5 on Rio.

chaupero avatar Feb 22 '22 17:02 chaupero

Hi, Try this. It works for me. The problem was the api version (too old on gmlib component) (see https://developers.google.com/maps/documentation/javascript/versions )

In your map.html file ( line 15) on \Resources folder: replace this:

for this:

If you use TWebBrowser on Rio or previus, you get a google api warning that your webbrowser not support javascript. Add this line on

I guess with TChromium it's not necesary.

After the changes on map.html file you need to recompile the resources run rc.cmd file and build all projects on your project.

I read on Version 10.4, TWebBrowser have a property SelectedEngine that you can change to Edge (Chromium) (not tested)

chaupero avatar Feb 23 '22 12:02 chaupero

Hi

Thank you.

(and do not forget to run "rc.cmd" in same folder)

gablac avatar Feb 23 '22 13:02 gablac

@chaupero just WOW ! Can't thank you enough ! Works PERFECTLY !

vpapanik avatar Feb 23 '22 15:02 vpapanik

Check here https://github.com/rclab-auth/GMLib-Delphi-Sydney-10.4

vpapanik avatar Mar 08 '22 07:03 vpapanik

In August 2022, Google Maps are fully decommissioning the Internet Explorer 11. I'm working in a new version to use TEdgeBrowser or Chromium but it is still in a very early version

cadetill avatar Mar 08 '22 08:03 cadetill

GMLib stoped working like in vpapanik report from 2022-02-22. Looks like trouble with version of Google API, but can't be fixed with recomended method. Tested with version 3.48 and 3.49 which are supported by Google, see https://developers.google.com/maps/documentation/javascript/versions . Sorry for Czech version of dialog :) obrazek

tomashruska avatar Nov 18 '22 16:11 tomashruska

consider the change to GMLib v2 (currently under development).

cadetill avatar Nov 18 '22 16:11 cadetill

Is there still any workaround available ?

Raymond-Ng avatar Nov 21 '22 02:11 Raymond-Ng

Workaround:

  1. increase API version to 3.48 - described in this discussion
  2. set emulation of higher version of IE or switch to other browser core

tomashruska avatar Nov 24 '22 11:11 tomashruska

how to do the following if using Delphi 7 ? and which other browser can work in Delphi 7?

  1. set emulation of higher version of IE or switch to other browser core

Raymond-Ng avatar Nov 25 '22 07:11 Raymond-Ng

It's Windows settings i.e. https://learn.microsoft.com/en-us/answers/questions/830338/getting-browser-emulation-value-as-7000-even-thoug.html of course you can do it dy Delphi.

tomashruska avatar Nov 25 '22 09:11 tomashruska

In map.html I changed line #15 to version 3.48

<script type="text/javascript" src="https://maps.google.com/maps/api/js?v=3.48&key=API_KEY&libraries=weather,panoramio,geometry,drawing,visualization"></script>

I tried to add a DWORD value (11001) in Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

but it didn't work.

I am certainly missing something here.

vpapanik avatar Dec 03 '22 19:12 vpapanik

I got the same error. But can't doit work, Last version working on IE11 is 3.47.

https://groups.google.com/g/google-maps-js-api-v3-notify/c/l3mdkZ5JyDg

You need TEdgeBrowser.

chaupero avatar Dec 05 '22 12:12 chaupero

Hello everbody, How is run gmlib_v1 with TEdgeBrowser ? or do work gmlib_v1 another way? my error 80020101.

cfatihb avatar Dec 07 '22 13:12 cfatihb

Code for IE higher version emulation: var regKey: TRegistry; var ieversion: integer := 9*1000 + 1; regKey := TRegistry.Create; regKey.RootKey := HKEY_CURRENT_USER; regKey.OpenKey('Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION', true); var keyText := TPath.getFileName(Application.ExeName); if not regKey.ValueExists(keyText) then begin regKey.WriteInteger(keyText, ieVersion); regKey.CloseKey; regKey.Free; ShowMessage('Compatibility IE mode written. Application will be terminated, start it again.'); Application.Terminate; end; regKey.CloseKey; regKey.Free;

tomashruska avatar Dec 08 '22 10:12 tomashruska

Workaround: 1. increase API version to 3.48 - described in this discussion 2. set emulation of higher version of IE or switch to other browser core

Do you mean that you managed to make GMLib v1 work with IE using emulation ?

vpapanik avatar Dec 08 '22 10:12 vpapanik

Yes, i use it in real project.

tomashruska avatar Dec 08 '22 11:12 tomashruska

Yes, i use it in real project.

Are you sure ?

I have increased API to version 3.48 in map.html (recompiled) I am using the v1 of GMLib I added 11001 (2af9) emulation in registry for my executable I am using the TWebBrowser component

and I am still getting an error. What I did wrong ?

vpapanik avatar Dec 08 '22 11:12 vpapanik

My configuration:

  • Win 10
  • Delphi 10.3
  • gmlib v.1 fork https://github.com/rclab-auth/GMLib-Delphi-Sydney-10.4.git
  • changed map.html to ver. 3.48
  • recompiled resources
  • added code for IE higher version emulation (see older comment) It works for me.

tomashruska avatar Dec 08 '22 12:12 tomashruska

Excellent ! it works for me too. Code is 9001 after all. Thanks a million @tomashruska

vpapanik avatar Dec 08 '22 12:12 vpapanik

My configuration:

  • Win 10
  • Delphi 10.3
  • gmlib v.1 fork https://github.com/rclab-auth/GMLib-Delphi-Sydney-10.4.git
  • changed map.html to ver. 3.48
  • recompiled resources
  • added code for IE higher version emulation (see older comment) It works for me.

You are Perfect Tomas :) thanks this all

cfatihb avatar Dec 08 '22 14:12 cfatihb

Yes, working now. Magic word is 9001. Thanks !!!

Raymond-Ng avatar Dec 09 '22 04:12 Raymond-Ng

Yes, working now. Magic word is 9001. Thanks !!!

It doesn't make very much sense but it works perfectly. Tried other emulator codes (10001, 11001) and it fails.

This 9001 code does not even exist : https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/general-info/ee330730(v=vs.85)?redirectedfrom=MSDN

vpapanik avatar Dec 09 '22 12:12 vpapanik

It seems that ANY number WORKS except those corresponding to a real code (https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/general-info/ee330730(v=vs.85)?redirectedfrom=MSDN)

Try zero, it works.

EDIT : Someone else, has found it too : https://stackoverflow.com/questions/70469629/change-feature-browser-emulation-in-vba-excel-for-internet-explorer

vpapanik avatar Dec 09 '22 12:12 vpapanik

hey how is everything?

I'm having problems running on some machines with different versions of windows.

imag

windows version (Imag. 1) 22H2 - 19045.2364 imag1

Internet explorer cannot run anymore, it opens Edge when executed.

Working normally.

In windows with version 21H2 - 19044.2364 (imag. 2), internet explorer can still be executed, the available version is 11, even so the error occurs.

Img2

can you help me?

I thank the attention.

jadermjr avatar Jan 17 '23 19:01 jadermjr

As of today, you need to change the version to 3.49 on Resources/map.html

<script type="text/javascript" src="https://maps.google.com/maps/api/js?v=3.49&key=API_KEY&libraries=weather,panoramio,geometry,drawing,visualization"></script>

Then run rc.bat and rebuild all libraries.

Don't forget to use ZERO (0) as a value in registry (Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION) next to the the executable name.

vpapanik avatar Feb 24 '23 16:02 vpapanik

This morning it seems, that the OSM Map will not work 😭. Google map and sattelite is still fine, but after pressing the OSM-button to switch, nothing happend.

Herr-Ma avatar Apr 17 '23 05:04 Herr-Ma

This morning it seems, that the OSM Map will not work 😭. Google map and sattelite is still fine, but after pressing the OSM-button to switch, nothing happend.

It works fine again.

vpapanik avatar Apr 20 '23 13:04 vpapanik