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

Duvida sobre diretorio


Viniw

Pergunta

Ola!

eu estou fazendo um sisteminha, e tem uma parte que eu uso um opendialog para adicionar uma entrada nova no banco de dados, e por isso estou com o seguinte problema:

Por exemplo

Meu programa esta em: 'C:\Arquivos de programas\Meu programa\BD'

Na opção DatabaseName eu coloco: '.\BD'

Funciona normal, mas quando eu uso o OpenDialog e abro um arquivo (c:\exemplo\seilah.wav), o ponto antes de \BD para de representar 'C:\Arquivos de programas\Meu programa', e vira 'c:\exemplo', por isso ele procura o arquivo do banco em 'c:\exemplo\BD', e por isso da erro.

Eu pensei em colocar o diretório inteiro na opção DatabaseName do table, mas eu uso isso em mais que um computado, e nunca deixo no mesmo diretorio, e ainda quero colocar o meu programa pra download, e cada usuário vai pode instalar o programa em pastas diferentes.

Para resolve isso eu pensei em pega o diretório quando o programa inicializa, mas nom sei como faze isso xD

não sei se precisa mas:

Uso o delphi 7, e o banco de dados que eu estou usando é o paradox

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Para resolve isso eu pensei em pega o diretório quando o programa inicializa, mas nom sei como faze isso xD

Voce pode colocar este codigo no form create do primeiro form do seu programa ou outro lugar

procedure TForm1.Button1Click(Sender: TObject);
var caminho : string;
begin
   caminho := ExtractFilePath(Application.ExeName)+'Arquivos';
   Label1.Caption := caminho;
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

cara eu fiz isso ateh um pouco antes antes de você responde e deu um erro

na form1 é uma tela de login

ai eu pego o diretório

no segundo form eu eu fiz isso

Table1.DatabaseName:=form1.Dir.Caption+'\BD';

Table1.TableName:='Toque.db';

Table1.Active:=true;

e fica dando "Invalid file name", isso é alguma coisa que eu to esquecendo? ou não da mesmo?

Link para o comentário
Compartilhar em outros sites

  • 0
Table1.DatabaseName:=form1.Dir.Caption+'\BD';

e fica dando "Invalid file name", isso é alguma coisa que eu to esquecendo? ou não da mesmo?

Desta maneira não funciona.. não existe Dir neste comando ( Form1.Caption )

O erro é nome de arquivo inválido

no exemplo que voce deu...

Meu programa esta em: 'C:\Arquivos de programas\Meu programa\BD'

basta usar desta maneira

procedure TForm1.Button1Click(Sender: TObject);
var caminho : string;
begin
   caminho := ExtractFilePath(Application.ExeName)+'BD';
   Table1.DatabaseName:= caminho;
   Table1.TableName:='Toque.db';
   Table1.Active:=true;
end;

Este comando é para extrair o caminho de onde o seu aplicativo está sendo executado, e se o banco de dados ( BD ) estiver na mesma pasta, não tem erro.

OS: se faltar a barra no final é só colocar

caminho := ExtractFilePath(Application.ExeName)+'\BD';

abraço

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...