![]() |
Routen Planner_ gibt Fehlermeldung aus
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Friends,
ich bin mit mein Google Routenplanner fast fertig. Es sind zwei verschiedene Versionen SDI und MDI. SDI Version funktioniert einwandfrei. Das Problem ist aber beim MDI Version undzwar: wenn ich Menu Route Planner klicke Form_Planner zeigt sich an soweit so gut aaber wenn ich before Google Map überhaupt in Webbrowser vollständig geaden ist, den Form_Planner schließe kommt ein Fehlermeldung: 'Access violation at adress 004EB9BB in module 'GoogleMapsTest.exe'. Read of adress 00000000. In SDI Version kommt diese Fehlermeldung nicht.. ! Ich bin seit 2 Wochen dabei dies zu beheben leider ohne Erfolg.:wall: Für jede Idee bin sehr dankbar. Gandhimann :vernupft: |
AW: Routen Planner_ gibt Fehlermeldung aus
Könnte eventuell daran liegen:
Delphi-Quellcode:
Du gibst die Steuerung aus der Methode TWBGoogleMaps.LoadHTML ab, so daß der Anwender zwischendurch die Möglichkeit hat, das Fenster zu schließen, bevor die Methode ganz abgearbeitet wurde. Das führt dann fast zwangsläufig zu Zugriffsverletzungen.
while HostedBrowser.ReadyState < READYSTATE_INTERACTIVE do
Forms.Application.ProcessMessages; Mal ganz abgesehen davon arbeitest Du noch mit der Version 2 des API's. Diese ist schon seit rund zwei Jahren als deprecated gekennzeichnet. Du solltest also so bald wie möglich auf die Version 3 umstellen. Dann sind auch keine Tricks mehr notwendig, um den API-Schlüssel zu vermeiden. |
AW: Routen Planner_ gibt Fehlermeldung aus
Ich habe Dein Programm einmal mit folgenden Veränderungen getestet:
Delphi-Quellcode:
Damit traten bei mir keine Zugriffsverletzungen mehr auf.
type
TfrmDirections = class(TForm) [...] private [...] FCanClose, FDoClose: Boolean; public [...] end; procedure TfrmDirections.FormClose(Sender: TObject; var Action: TCloseAction); begin if FCanClose then begin Action:=caFree; frmDirections:=nil; end else begin Action:=caNone; FDoClose:=true; //Anforderung zum Schließen des Fensters merken end; end; procedure TfrmDirections.OnShowCallback(var aMsg: TMessage); begin fWBGoogleMaps.LoadDefaultGoogleMapsDocument; fAllowResizeHandler:=true; FormResize(nil); FCanClose:=true; //ab hier darf das Fenster geschlossen werden if FDoClose //Fenster sollte schon vorher geschlossen werden then Close; //-> jetzt nachholen end; |
AW: Routen Planner_ gibt Fehlermeldung aus
Zitat:
Mann lernt ja Tagtäglich.... Thank You for your kind help..Thomas Gandhimann |
AW: Routen Planner_ gibt Fehlermeldung aus
Vielen Dank! Gern gemacht! :-D
Noch ein kleiner Hinweis zu Deinem Programm: Du solltest die Taste F5 abfangen - sonst führt TWebBrowser ein Refresh durch und ist plötzlich leer... |
AW: Routen Planner_ gibt Fehlermeldung aus
Jo ! Danke.
Ich folge dein Rat und stelle gerade mein Programm auf Google API V3 um und werde denn zum Testen anbieten. Have a nice Day !:thumb: Gandhimann |
AW: Routen Planner_ gibt Fehlermeldung aus
Ja, das kannst Du gern machen.
Da sich durch die Umstellung sehr viel am JavaScript-Code ändert, steht Dir eine ganze Menge Arbeit bevor. Hast Du schon einmal darüber nachgedacht, das ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr. |
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