Verificar se arquivo está em uso

Delphi

14/03/2005

Boa tarde a todos!

Tenho um aplicativo servidor que precisa ter acesso de forma única a um arquivo, para realizar algumas operações com o mesmo. Acontece que este arquivo é usado por vários aplicativos clientes ao mesmo tempo.

O que eu preciso é saber se o arquivo está em uso quando o servidor for realizar tal operação? Existe alguma função que me retorne este status? Já vasculhei a API do windows mas não tive sucesso na minha busca.

Grato desde já.


Fabricio Lb

Fabricio Lb

Curtidas 0

Respostas

Nandolh

Nandolh

14/03/2005

if FileOpen(´c:\temp.txt´,fmOpenReadWrite) > 0 then
showmessage(´Arquivo carregado com êxito´);
else
showmessage(´Arquivo já está sendo utilizado.´);


GOSTEI 0
Fabricio Lb

Fabricio Lb

14/03/2005

if FileOpen(´c:\temp.txt´,fmOpenReadWrite) > 0 then showmessage(´Arquivo carregado com êxito´); else showmessage(´Arquivo já está sendo utilizado.´);


Fiz esta implementação. Aparentemente funcionou, porém em algumas máquinas o resultado do FileOpen é sempre -1, independente do arquivo está sendo usado ou não. No início até pensei que poderia ser algum problema com o arquivo, mas mesmo criando outro igual o FileOpen não funciona.

Obs: Eu consigo renomear o arquivo no mesmo momento em que tento abrí-lo pelo programa usando o FileOpen, o q indica que o mesmo não está sendo usado neste momento.

?????

Obrigado


GOSTEI 0
POSTAR