Delphi-PRAXiS
Seite 48 von 55   « Erste     38464748 4950     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Google Maps über COM (Component Object Model) (https://www.delphipraxis.net/157004-google-maps-ueber-com-component-object-model.html)

GPRSNerd 19. Feb 2015 10:02

AW: Google Maps über COM (Component Object Model)
 
Wie oben schon gesagt, bei mir geht jetzt nur leider der vollständige Kartenrefresh mit Script.Free und erneutem TScript.Create() nicht mehr, da wirft dann HTMLObjects.TDocument.GetBody() eine Exception. Anscheinend kann dann der <body>-Node im erzeugten HTML nicht mehr gefunden werden.
Wenn ich das Script leben lasse und einfach LoadAPIAsync(Initmap) erneut aufrufe, kommen Exceptions durch die BrowserTools.GetZoom/GetCenter, die Exception durch GetBody() ist dann weg.
Könnte sich das ein XML-Experte mal ansehen, das übersteigt meine Fähigkeiten?!

GPRSNerd 19. Feb 2015 11:13

AW: Google Maps über COM (Component Object Model)
 
Das hat mir doch keine Ruhe gelassen, da ich gerade in Myanmar bin und meine täglichen GPSTracks dekodieren und anzeigen möchte! :(

Hier ein Fix, der ohne Veränderung der gmlib-Sourcen auskommt (also wieder die originale gmAPI.pas zurückbauen) und keine bisher beobachtbaren Nebenwirkungen hat, aber wohl nur eine begrenzte Lebensdauer.
Anstatt LoadAPIAsync(InitMap) aufzurufen, folgende Parameter hinzufügen, die dann die letzte funktionierende API-Version v3.18 erzwingt:

Delphi-Quellcode:
    with TScript.Create(wbGoogleMap) do
      LoadAPIAsync(InitMap,
                   DefaultLanguage,
                   DefaultRegion,
                   3.18);
Wenn Google diese aber in der Zukunft als deprecated flaggt und nicht mehr zulässt, gehts so natürlich nicht mehr. :)

Borni 19. Feb 2015 12:02

AW: Google Maps über COM (Component Object Model)
 
Bei mir klappt es sogar mit 3.20, es scheint so als ob es reicht nur die VersionNr. mit zu übergeben. Es funzt wieder alles, auch das Tracking

DelphiFan2008 22. Feb 2015 15:01

AW: Google Maps über COM (Component Object Model)
 
Hallo GPRSNerd,

danke für deinen "SW-Fix". War schon beunruhigt, dass meine Applikationen mit Kartendarstellung und Streckenzug/Polygon nicht mehr funktionieren. Von Thom hört man gar nichts mehr ... :pale: Schade!

Gruß DelphiFan2008

Klaus Budmiger 23. Feb 2015 15:06

AW: Google Maps über COM (Component Object Model)
 
Eine Frage: hat jemand die Libraries mit XE7 zum Laufen gebracht?
Welches ist die aktuelle Version?
Vielen Dank!

GPRSNerd 24. Feb 2015 08:03

AW: Google Maps über COM (Component Object Model)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Die Version 2.0 läuft mit den Original-Dateien aus Post#1 und meiner angepassten XE7-inc-Datei unter XE7 einwandfrei.
Version 2.1 war nur für spendende Supporter.

Anhang 42620

GPRSNerd 5. Apr 2015 14:04

AW: Google Maps über COM (Component Object Model)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anbei die erweiterte inc-Datei für das zukünftige XE8, unter der Vorraussetzung, dass die Versionsnummern (VER290, CompilerVersion=29) wie immer einfach hochgezählt werden.

Anhang 42850

himitsu 5. Apr 2015 14:51

AW: Google Maps über COM (Component Object Model)
 
Ich denk auch mal, daß es einfach hochgezählt wird.
29 ist auch keine böse Zahl, so wie die übersprungene 13.

Zitat:

Delphi-Quellcode:
{$IFDEF VER240}
  {$DEFINE DELPHIXE3}
  {$IF CompilerVersion>=24}

Das IF CompilerVersion ist schon bissl nutzlos.
  • Delphi-Quellcode:
    > 24
    kann es dort niemals werden, denn nur IFDEF VER240,
  • und
    Delphi-Quellcode:
    = 24
    wird immer zutreffen.

Conditional-Expressions und die CompilerVersion-Konstante gibt es schon seit Delphi 6
und wenn man andersrum arbeitet, dann wird das alles viel kürzer, übersichtlicher und man muß vorallem langlebiger.
  • die VERxxx-Konstanten komplett vergessen (oder läuft dein Code wirklich noch in D1 D2 bis D5?)
  • aber wenn schon VERxxx, dann statt "ab Version" auf "bis Version" vergleichen, denn dann ist es egal, ob es eine neue Version gibt, da man die Probleme dort gefixt hat, wo sie bestehen. (in den bekannten Versionen)
  • oder man geht nur noch auf CompilerVersion
    Delphi-Quellcode:
    <=
    oder
    Delphi-Quellcode:
    >=
    , bzw.
    Delphi-Quellcode:
    =
    , wenn es ausschließlich für diese Version gilt.

GPRSNerd 27. Mär 2016 12:49

AW: Google Maps über COM (Component Object Model)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe die Anregung von himitsu wegen der redundanten und pflegeaufwändigen DEFINEs mal umgesetzt und auf das wesentliche reduziert.
Da die Komponente seit XE3 nicht mehr weiterentwickelt wurde, gibt es auch keine Änderungen für neuere Compiler-Versionen zu berücksichtigen, dementsprechend sind alle Compiler > XE3 kompatibel, die DEFINEs müssen dafür nicht mehr erweitert oder geändert werden.

jonathan 25. Mai 2016 09:17

AW: Google Maps über COM (Component Object Model)
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,
ich bekomme seit heute laufend Script-Fehler in meiner Applikation (die seit einigen Jahren problemlos läuft).
Ich habe mal zwei Fehlermeldungen angefügt...

Hat jemand eine Ahnung, was hier los ist?
Was hat GOOGLE hier umgestellt, dass es plötzlich nicht mehr funktioniert??

Stehe ziemlich auf dem Schlauch und bin für jeden Tipp dankbar...

[Edit]
Es wird wohl an der Umstellung auf 3.24 liegen:
https://groups.google.com/forum/#!to...fy/zt-SHMtNRiI

Die spannende Frage ist nur, was ist zu tun, um die Delphi-API wieder zum funktionieren zu bewegen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:28 Uhr.
Seite 48 von 55   « Erste     38464748 4950     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz