Ir ao conteúdo
  • Cadastre-se

Problemas com tstringlist no d6


maclogic

Posts recomendados

aí galera.. espero que ache uma resposta pra essa, já que minha ultima pergunta foi em vão.. :)

Tenho um TStringList onde estou usando o method SaveToFile

Ex.

slMinhaLista.SaveToFile('c:\teste.txt');

Ate ai beleza..o problema é quando eu tento escrever nesse teste.txt novamente..

Eu já tentei dar um free no StringList e não tem jeito.. eu tenho que fechar o form que ele esta para poder poder dar outro SaveToFile no arquivo 'c:\teste.txt'..

Mesmo no Windows Explorer eu não consigo apagar esse arquivo ...

Alguem tem ideia??

Agradeco de antemao..

[]s

Mac Logic

Link para o comentário
Compartilhar em outros sites

Procedure SalvaArquivo();

Var

   slTeste : TStringList;

Begin

   slTeste := TStringList.Create();

   While Not Parts.Eof Do

   Begin

        Aqui faz um monte de coisas.. pega descricoes de

        partes e tal..

        slTeste.Add(um monte de coisas);

        parts.Next;

   End;

   slTeste.SaveToFile('c:\teste.txt');

   slTeste.Free;    

End;

Procedure btncommandClick(sender:TObject);

Begin

    SalvaArquivo();

End;

a primeira vez q eu clico no botao ele vai e grava na boa.. depois ele vai e diz q não consegue acessar o arquivo

c:\teste.txt

espero que ajude.. não coloquei a funcao original porque não esta agora aqui comigo.. mas é +/- isso q esta fazendo e a logica do string list q é o q importa é exatamente desse jeito..

[]s

Mac Logic

Link para o comentário
Compartilhar em outros sites

Estranho... testei esse código, e não ocorreu nada de anormal aqui... tente chamar essa outra procedure pelo btncommandClick:


Procedure SalvaArquivo2;
Var
  slTeste : TStringList;
  i : integer;
Begin
  slTeste := TStringList.Create();
  for i:=0 to 10 do
      slTeste.Add('Teste...');

  slTeste.SaveToFile('c:\teste.txt');
  slTeste.Free;
End;

Se esse código der problema também, é porque você está fazendo algo de "anormal" com o arquivo em alguma outra parte do código.  d-:

Link para o comentário
Compartilhar em outros sites

Pois é DanielKO, estou ate me sentindo meio que "*****" com esse post.. tipo estava utilizando depois dessa linha de codigo um componente que eu baixei na internet pra remover os acentos..e eu especificava exatamente esse arquivo teste.. o que acontecia era mesmo depois de eu dar um free nesse componente ele ainda deixava o arquivo lockado.. issow explica o porque eu não conseguia rodar da 2 vez em diante....

Desculpa aí o alarme falso.. :)

[]s

Mac Logic

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!