Meu problema é o seguinte, estou fazendo um programa que acessa um arquivo txt que está em rede, no entanto quando alguém apaga o arquivo txt dá problema em todos os computadores, porque coloquei um timer que a cada segundo puxa as informações do arquivo para um memo.
Estou tentando fazer que o arquivo seja criado no momento em que ele ver que ele foi deletado, no momento sem sucesso, abaixo vai o código fonte que já fiz:
procedure TForm1.Timer1Timer(Sender: TObject);
var
ScrollMessage:TWMVScroll;
i:integer;
FFileHandle: TFileStream;
begin
if not FileExists(sala) then
begin
FileClose(FileCreate(sala));
FFileHandle := TFileStream.Create(sala, fmOpenWrite or fmShareDenyWrite);
FFileHandle.Seek(0, soFromEnd);
end;
try
if sala = '' then
else
[b]memo1.Lines.LoadFromFile(sala);[/b]
StatusBar1.Panels[0].Text := TimeToStr(now);
ScrollMessage.Msg:=WM_VScroll;
for i := 0 to Memo1.Lines.Count do
begin
ScrollMessage.ScrollCode:=sb_LineDown;
ScrollMessage.Pos:=0;
Memo1.Dispatch(ScrollMessage);
end;
Except
ShowMessage('Houve algum problema com o arquivo de texto, o programa será fechado!');
close;
end;
end;
Ele cria o arquivo sem problemas, no entanto vai dar um erro na linha que deixei em negrito, com o segunte erro:
Project.Projeto.exe raised exception class EFOpenError with message 'Cannot open file "C:\Documents and Settings\All\User\Documentos\sala.txt". O arquivo já está sendo usado por outro processo'. Process stopped. Used Setp or Run to continue.
Pergunta
RenatoMejias
Meu problema é o seguinte, estou fazendo um programa que acessa um arquivo txt que está em rede, no entanto quando alguém apaga o arquivo txt dá problema em todos os computadores, porque coloquei um timer que a cada segundo puxa as informações do arquivo para um memo.
Estou tentando fazer que o arquivo seja criado no momento em que ele ver que ele foi deletado, no momento sem sucesso, abaixo vai o código fonte que já fiz:
Ele cria o arquivo sem problemas, no entanto vai dar um erro na linha que deixei em negrito, com o segunte erro:
Alguém tem uma idéia do que possa ser?
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
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.