Usando o Google Maps na Aplicação - Delphi 7 - Error

Delphi

Automação Comercial

16/10/2015

Caros bom dia.
Estou com uma situação na qual não consigo resolver, então estou aqui a pedir ajuda de vcs.

Tenho uma aplicação em Delphi 7 que e um sistema de Delivery onde tenho uma integração com o Google Maps para poder traçar as rotas dos entregadores, bem ate ae tudo OK...funcionava perfeitamente segue imagem abaixo:

[img]http://arquivo.devmedia.com.br/forum/imagem/361989-20151016-120327.jpg[/img]

Sendo que de uns dias pra cá não consigo mais acessar o Google Maps pelo Web Browser do Delphi, informa que preciso atualizar meu navegador para poder usa-lo, sendo que ja fiz todas as atualizações necessárias e mesmo assim continua o mesmo problema, alguem pode me ajudar, vou postar aqui abaixo o codigo que estou usando na aplicação.

Codigo:


// Variaveis onde pego o endereço do cliente.

procedure TFormTermDeli.btnRotaClick(Sender: TObject);
var
vTipo : string;
vLogradouro: string;
vNumero : string;
vBairro : string;
Caminho : string;
begin

vTipo := stTipoLogr.Caption;
vLogradouro:= stLogrClie.Caption;
vNumero := stNume.Caption;
vBairro := stBairClie.Caption;

Caminho := vTipo + ' ' + vLogradouro + ',' + vNumero + '-' + vBairro;


Roteirizar := Roteirizar+'/'+ Caminho;

end;



// Ennviando para o componente WebBrowser do Delphi 7

procedure TFormTermDeli.sbRotaClick(Sender: TObject);
var
Rota : string;
begin
Rota := '' + ashTipoLogr + ' ' + ashLogrEmpr + ',' + ashNumeEmpr + ' - ' + ashBairEmpr + ' - ' + ashCEPEmpr;

ConsultaEndereco := 'https://www.google.com.br/maps/dir/' + Rota + Roteirizar;
If (FormGoogleMaps = Nil) Then
Application.CreateForm(TFormGoogleMaps, FormGoogleMaps);
FormGoogleMaps.WindowState := wsMaximized;
FormGoogleMaps.webGoogle.Navigate(ConsultaEndereco);
FormGoogleMaps.Show;

Roteirizar := '';

end;

em seguida anteriormente aparecia a rota normal, como se eu fizesse pela propria api do Google...
Agora aparece a seguinte mensagem segue abaixo:
[img]http://arquivo.devmedia.com.br/forum/imagem/361989-20151016-121309.jpg[/img]
Cid Maia

Cid Maia

Curtidas 0

Respostas

Franco Caldas

Franco Caldas

16/10/2015

Cid Maia,
Estou com o mesmo problema, você já têm alguma solução?
GOSTEI 0
Mateus Ribeiro

Mateus Ribeiro

16/10/2015

Boa tarde!

As APIs do Google Maps tem constantes atualizações... e Isso afeta projetos onde o Browser não acompanha esses updates, e acabam se tornando incompatíveis!

Eu testei aqui com um componente de browser para Delphi chamado "Chromium Embedded" e funcionou perfeitamente.


Espero que ajude!
GOSTEI 0
Cid Maia

Cid Maia

16/10/2015

Franco Caldas apos a postagem de nosso amigo Mateus Ferreira Ribeiro fiz uma alteração no codigo; Então para o meu problema fiz o seguinte:

Rota := '' + ashTipoLogr + ' ' + ashLogrEmpr + ',' + ashNumeEmpr + ' - ' + ashBairEmpr + ' - ' + ashCEPEmpr;
ConsultaEndereco := 'https://www.google.com.br/maps/dir/' + Rota + Roteirizar;

ConsultaEndereco := 'https://www.google.com.br/maps/dir/' + Rota + Roteirizar;
ShellExecute(0, Nil, PChar(''+ConsultaEndereco+' '), Nil, Nil, 0);

Roteirizar := '';

Se você observar retirei o componente Web Browser e apliquei o shellExecute chamando dentro dos parâmetros a String ConsultaEndereco.
Dessa Forma conseguir fazer com que ele abrisse a pagina do Google Maps e roteirizasse meus endereços.

Falta fazer da forma que o Mateus Ferreira Ribeiro fez para em caso de algum problema novamente, termos um plano B.
GOSTEI 0
POSTAR