Blz Edu achei a function abaixo. O problema é que se abro o arquivo
log.txtvia notepad e escrevo qualquer coisa nele e NÃO salvo, a
function me retorna
dizendo que o arquivo não está em uso.

function IsFileInUse(fName : string) : boolean;
var
HFileRes : HFILE;
begin
Result := false;
if not FileExists(fName) then
   exit;
HFileRes := CreateFile(pchar(fName), GENERIC_READ or GENERIC_WRITE,0 {this
is the trick!}, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then
   begin
   CloseHandle(HFileRes);
   end;
end;


// codigo para validação da funcion acima:
  if IsFileInUse('C:\log.txt') then
    Showmessage('arquivo não pode ser processado')
  else
   ShowMessage('arquivo pode ser processado');


Alguma dica?


Em 15/03/07, Edu Nicácio <[EMAIL PROTECTED]> escreveu:
>
>   Esta dica foi postada aqui semana passada.
>
> Tenta dar uma olhada nas mensagens anteriores que com certeza ela está lá.
>
> Abraço.
>
> ----------------------------------------------------------
> Atenciosamente:
>
> Eduardo Cláudio Nicácio
> Analista Programador JR.
> Fábrica 02 - CTIS
> Tel.: (11) 3150-6834
> [EMAIL PROTECTED] <rsn01.web03%40telesp.com.br>
>
>
> ----- Original Message -----
> From: Diogo Viegas
> To: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>
> Sent: Thursday, March 15, 2007 9:50 AM
> Subject: [delphi-br] Processar Arquivos - FTP
>
> Srs,
>
> Alguém teria alguma rotina que verifique se o arquivo a ser processado não
> está em uso por um servidor FTP ou outro serviço qualquer?
> Tenho um driver que carrega arquivos de um diretório, processa e carrega
> para o banco de dado e por algum motivo quem está descarregando o arquivo
> no
> diretório que eu busco os arquivos avisa que o serviço que envia por parte
> dele trava. Assim só quero processar arquivos que estão 100% entregues.
>
> Obrigado.
> Att.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]

Responder a