Fórum Manipulação de arquivos (download e delete) #591124
05/02/2018
0
Pessoal
Algum os colegas passou por problemas na manipulação de arquivos em programas escritos no Delphi, windows 10 (64bits principalmente) e anti-virus da trend?
Característica no dev máquina virtual com windows 7 (32), Delphi 7.
O programa realiza todas as operações sem problemas (download, upload, grava em arquivos, apaga arquivos das áreas determinadas , no geral é uma pasta chamada lixeira no caminho do programa.
A situação o anti virus indica um falso positivo no momento da exclusão de um arquivo que está na pasta da lixeira do sistema e exclui o programa por segurança, o que intriga é que se eu excluir antes o arquivo, ou o erro não ocorre ou ocorre em outro arquivo.
Já fiz e refis a instrução de apagar arquivo, troquei por outra e nada.
Em alguns casos basta reinstalar o sistema e isto não ocorre mais.
segue a instrução de apagar arquivo que estou utilizando
Algum os colegas passou por problemas na manipulação de arquivos em programas escritos no Delphi, windows 10 (64bits principalmente) e anti-virus da trend?
Característica no dev máquina virtual com windows 7 (32), Delphi 7.
O programa realiza todas as operações sem problemas (download, upload, grava em arquivos, apaga arquivos das áreas determinadas , no geral é uma pasta chamada lixeira no caminho do programa.
A situação o anti virus indica um falso positivo no momento da exclusão de um arquivo que está na pasta da lixeira do sistema e exclui o programa por segurança, o que intriga é que se eu excluir antes o arquivo, ou o erro não ocorre ou ocorre em outro arquivo.
Já fiz e refis a instrução de apagar arquivo, troquei por outra e nada.
Em alguns casos basta reinstalar o sistema e isto não ocorre mais.
segue a instrução de apagar arquivo que estou utilizando
procedure RemoverArquivosDefinitivo (sPasta : String);
var
SearchRec: TSearchRec;
begin
if not DirectoryExists(sPasta) then
begin
WriteLogr(''''Tentativa de excluir aquivo da pasta ''''+sPasta+'''' que não existe!'''');
Exit;
end;
if (Copy (sPasta,length(sPasta),1)<>''\\\\'') then
sPasta := sPasta+''\\\\'';
if SysUtils.FindFirst( sPasta + ''''*.*'''',faAnyFile ,SearchRec ) = 0 then
try
repeat
if ( SearchRec.Name <> ''''.'''' ) and ( SearchRec.Name <> ''''..'''' ) then
begin
try
DeleteFile( Pchar( sPasta + SearchRec.Name) );
except
on e : Exception do
WriteLogr(''''Não foi possivel excluir o arquivo "''''+sPasta+SearchRec.Name +''''". ''''+e.Message);
end;
end;
until FindNext( SearchRec ) <> 0;
finally
SysUtils.FindClose( SearchRec );
end;
end;
Luiz Vichiatto
Curtir tópico
+ 0
Responder
Posts
05/02/2018
Luiz Vichiatto
A propósito, esta parte ficou errada, leia-se<br />
<br />
if (Copy (sPasta,length(sPasta),1)<>''\\\\'') then<br />
sPasta := sPasta+''\\\\'';<br />
<br />
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)