Fórum Tratar Erro de Conexao #291675
13/08/2005
0
Como eu poderia fazer para evitar que apareça aquele erro ´...I/O error for file...´ Esser erro ocorre quando o arquivo de dados, configurado nos params do SQLConnection não existe.
Uso Delphi 7 e Firebird
Uso Delphi 7 e Firebird
Valdirdill
Curtir tópico
+ 0
Responder
Posts
13/08/2005
Lynx
Com try...
Segue abaixo um exemplo no create do DataModule
Segue abaixo um exemplo no create do DataModule
with DataModule do begin Try cntConnect.Params.Values[´Database´]:= path; cntConnect.Open; except Application.MessageBox(´Não Foi Possivel Estabelecer a ´ + ´Conexão com o Servidor !´, ´Aviso´,MB_ICONERROR); Exit; end; end;
Responder
Gostei + 0
15/08/2005
Lucianobarreto
[b:6d39259841]Eu costumo usar assim:[/b:6d39259841]
Var
ArqIni: tIniFile;
CaminhoBD: String;
Begin
ArqIni := TIniFile.Create(extractFilePath(ParamStr(0)) + ´Conf.ini´);
try
CaminhoBD := ArqINI.ReadString(´SISTEMA´,´Caminho´,´´);
Finally
ArqINI.Free;
end;
BD.Connected := False;
Try
BD.DataBaseName := CaminhoBD;
BD.Connected := True;
Trans.Active := True;
except
On E : EDataBaseError do
begin
if Pos(´UNAVAILABLE DATABASE´,UpperCase(E.Message)) <> 0 then
begin
ShowMessage( ´O Servidor InterBase não foi iniciado!´);
Application.Terminate;
end
else
if Pos(´DATABASE NAME IS MISSING´,UpperCase(E.Message)) <> 0 then
begin
ShowMessage( ´Banco de Dados não informado!´);
Application.Terminate;
end
else
begin
ShowMessage( ´O Banco de Dados não foi localizado!´);
Application.Terminate;
end;
end;
end;
Var
ArqIni: tIniFile;
CaminhoBD: String;
Begin
ArqIni := TIniFile.Create(extractFilePath(ParamStr(0)) + ´Conf.ini´);
try
CaminhoBD := ArqINI.ReadString(´SISTEMA´,´Caminho´,´´);
Finally
ArqINI.Free;
end;
BD.Connected := False;
Try
BD.DataBaseName := CaminhoBD;
BD.Connected := True;
Trans.Active := True;
except
On E : EDataBaseError do
begin
if Pos(´UNAVAILABLE DATABASE´,UpperCase(E.Message)) <> 0 then
begin
ShowMessage( ´O Servidor InterBase não foi iniciado!´);
Application.Terminate;
end
else
if Pos(´DATABASE NAME IS MISSING´,UpperCase(E.Message)) <> 0 then
begin
ShowMessage( ´Banco de Dados não informado!´);
Application.Terminate;
end
else
begin
ShowMessage( ´O Banco de Dados não foi localizado!´);
Application.Terminate;
end;
end;
end;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)