Ir para conteúdo
Fórum Script Brasil
  • 0

Tratar erro


Jeova Oliveira dos Santos

Pergunta

Boa noite, alguém pode me ajudar sobre o que estou querendo fazer, pois tenho uma conexão de banco de dados que caso der algum erro deve me retornar uma mensagem de erro de conexão e pronto nada mais. Uso banco mysql e componente de acesso Zeus com delphi 2010.

Abaixo vai minha função.

procedure TfrmPrincipal.lerBanco;

var caminho,IP:string;

data:TIniFile;

begin

caminho:=(ExtractFilePath(Application.ExeName));

data:=TIniFile.Create(caminho+'config\conf.ini');

with dm.ZC do

begin

Database:=data.ReadString('nDatabase','DataBase','');

HostName:=data.ReadString('nHost','HostName','');

Password:=data.ReadString('nSenha','Senha','');

Port:=data.ReadInteger('nPorta','Porta',0);

Protocol:=data.ReadString('nProtocol','Protoloco','');

User:=data.ReadString('nUser','Username','');

data.Free;

try

Connected:=True;

finally

if Connected=false then

ShowMessage('Erro de conexão');

end;

end;

end;

Do jeito que está mostra o a mensagem e outra tela dizendo uma mensagem padrão de erro de usuário padrão do mysql e eu não quero que mostre, somente mostre a Showmensage que programei e nada mais.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Do jeito que está mostra o a mensagem e outra tela dizendo uma mensagem padrão de erro de usuário padrão do mysql e eu não quero que mostre, somente mostre a Showmensage que programei e nada mais.

Experimente utilizar o tratamento de exceção da forma apropriada para este caso:

...
  with dm.ZC do
  begin
       ...
       try
           Connected:=True;
       except
           ShowMessage('Erro de conexão');
       end;
  end;
end;

Quando você utilizar o finally, o bloco de código dentro dele é executado havendo ou não uma exceção. Já quando você usa o except, o bloco de dados dentro dele será executado apenas quando ocorre a exceção. Nesta condição, quando você estiver depurando o código, pode até ser que a mensagem de exceção do banco seja apresentada, seguida pela sua. Mas executando fora do ambiente de desenvolvimento (o executável gerado) voce deve observar apenas a mensagem que voce programou.

Faz tempo que não programo Delphi, então, dê uma testada para ver se é isto mesmo. :)

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...