Fórum Caminho para banco de dados... #285322

20/06/2005

0

Boa tarde,

Amigos eu gostaria de fazer uma rotina que eu ao abrir o sistema ele iria ver em um ini ( EX: prog.ini ) contendo as seguintes informacoes...

[Banco de Dados]
Caminho=Vazio


se o caminho estiver = Vazio ele abre um form pra mim colocar o caminho correto... e apos eu colocar o caminho eu verifique se existe o arquivo ai abro o Programa principal... se nao eu fecho tudo....

se o caminho estiver <> Vazio e ele nao encontrar no banco de dados ele abre o mesmo form pra colocar o caminho ...


ou seja... so se estiver correto o caminho do software ele abre direto o programa.... teria como fazer alguma coisa do tipo ??


Fernando_cunha

Fernando_cunha

Responder

Posts

27/06/2005

Paullsoftware

amigo, coloque o código que abre o banco de dados do seu programa dentro dos try, except... ex.:
// aqui tento abrir o banco usando uma forma de conexão, usando arquivo udl..
Try
conexao.Connected := False;
 conn :=´FILE NAME=´+PathConfig;// <-- variavel que contem o caminho do banco, dentro de um arquivo ini...
  conexao.ConnectionString:=conn;
   conexao.Connected := True;
    Except
[color=red]//Se der erro na primeira tentativa tento novamente, usando o outra forma para acessar a base de dados...[/color]
Try
 conexao.Connected := False;
  Conn := ´Provider=Microsoft.Jet.OLEDB.4.0;Data Source=´+PathBanco+´;Persist Security Info=False;Jet OLEDB:Database Password=***dbtimer***´;
// A variável PathBanco tambem existe dentro do arquivo ini com o caminho da base de dados...
   conexao.ConnectionString := Conn;
    conexao.Connected := True;
    Except
     Application.MessageBox(´Ocorreu um erro na conexão com o Banco de Dados.´,´AVISO´,MB_ICONERROR+MB_OK);
[color=red]//se mesmo assim der erro, então abro o form para configuração das paths da base de dados, e em seguida, encerro a aplicação...[/color]
  Try
   Application.CreateForm(TFormParametros,FormParametros);
    FormParametros.ShowModal;
     Finally
    FormParametros.Release;
   FormParametros:=NIL;
  End;
Application.Terminate;
Halt(0);
End;
End;



[color=red:f499072630]Cria um arquivo ini, gosto de usar *.dat para dificultar alterações por qq usuário corioso...[/color:f499072630]

//Grava a path do banco de dados dentro do arquivo .dat
procedure NovoCaminho_DB(Caminho:String);
var
NomeArq:String;
ArqIni:TIniFile;
begin
NomeArq := (ExtractFilePath(Application.ExeName)+´\Parametros.dat´);
ArqIni:=TIniFile.Create(NomeArq);
 Try
 ArqIni.WriteString(´Banco de Dados´,´Banco´,Caminho);
 Finally
 ArqIni.Free;
 End;
end;



Código para leitura do arquivo ini, *.dat que contem as configurações para acesso a base de dados...
//Pega os parametros do Sistema
procedure Parametros;
var
NomeArq:String;
ArqIni:TIniFile;
begin
NomeArq := (ExtractFilePath(Application.ExeName)+´\Parametros.dat´);
ArqIni:=TIniFile.Create(NomeArq);
 Try
 PathBanco  := ArqIni.ReadString(´Banco de Dados´,´Banco´,PathBanco);
 PathConfig := ArqIni.ReadString(´Banco de Dados´,´Config´,PathConfig);
 vDaHora    := ArqIni.ReadFloat(´Valor da Hora´,´R$´,vDaHora);
 vTempAviso := ArqIni.ReadTime(´Notificação´,´Tempo´,vTempAviso);
 Finally
 ArqIni.Free;
 End;
end;


espero ter ajudado...
:wink:


Responder

Gostei + 0

28/06/2005

Fabiano Góes

Amigos sou totalmente leigo no assunto de arquivo.ini, será que algum de vcs poderia me passar um exemplo de arquivo ini pra um banco FireBird ?
detalhado tipo: onde guardo esse tal INI, como programo o sistema pra ler esse arquivo , etc ....

Ficaria muito grato se alguem puder me ajudar !!!!!


Responder

Gostei + 0

28/06/2005

Paullsoftware

adciona o meu contato do msn, to nele o dia todo...
podemos trocar muitas ideias...

paullsoftware@msn.com



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar