Fórum Verificar se arquivo TXT está em uso #421331

09/08/2012

0

Galera

Preciso verificar se o arquivo txt está sendo usado por outros usuários ou não.

Aguardo
Huelbert Oliveira

Huelbert Oliveira

Responder

Posts

09/08/2012

Romulo Contro

tenta renomear ele... se renomear é pq ninguem tá com ele aberto, se não, alguem está usando.
Responder

Gostei + 0

09/08/2012

Junior Miranda

Você também pode tentar deletar o arquivo.

[]´s
Responder

Gostei + 0

09/08/2012

Deivison Melo

Boa tarde,

Tente utilizar a função abaixo:

/*inicio*/
function IsFileInUse(FileName: TFileName): Boolean;
var
HFileRes: HFILE;
begin
Result := False;
if not FileExists(FileName) then Exit;
HFileRes := CreateFile(PChar(FileName),
GENERIC_READ or GENERIC_WRITE,
0,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then
CloseHandle(HFileRes);
end;
/*fim*/


Exemplo de uso:

/*inicio*/
procedure TForm1.Button1Click(Sender: TObject);
begin
if IsFileInUse(c:\Programs\delphi6\bin\delphi32.exe) then
ShowMessage(File is in use.);
else
ShowMessage(File not in use.);
end;
/*fim*/

Responder

Gostei + 0

09/08/2012

Huelbert Oliveira

Essa função funciona somente com EXE, já tinha tentado ela.
Responder

Gostei + 0

09/08/2012

Huelbert Oliveira

Renomeando não deu certo, mesmo utilizando renomeia.

Excluindo também não deu certo, ele deleta mesmo utilizando.

Se fosse um EXE era só utilizar a função acima, mas como é um TXT até agora não encontrei uma solução.
Responder

Gostei + 0

10/08/2012

Romulo Contro

putz, tava testando aqui... realmente, quando é txt, vc pode renomear, apagar, alterar, e fazer o que for... ele nao fica travado =/

to acompanhando o tópico, pq agora fiquei curioso também, mas não tenho idéia :S
Responder

Gostei + 0

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

Aceitar