Fórum Arquivos Thumbs.db aparece do nada #409265
10/11/2011
0
Fiz um progra em delphi XE 2011. Esse programa ele cria umas pastas baseada em uma regra e depois copia tres arquivos para dentro dessas pastas. Esses arquivos são: .PDF, .TIF e .TXT. Acontece que ele começa pelos .PDF e quando chega no TXT, dá erro, pois aparece do nada uns arquivos Thumbs.db. Se eu pesquiso nas pastas, esses arquivos não aparecem, então porque eles aparecem na minha rotina de cópia e criação das pastas? Abaixo meu código
procedure TForm1.DevolveArquivo(Origem, Destino: String);
var
SR: TSearchRec;
DDir,SDir,Dir: String;
I: Integer;
nm_dir,
novo_dir,
str_token,
novo_cont,
nm_arq: String;
begin
SDir := IncludeTrailingPathDelimiter(Origem);
DDir := IncludeTrailingPathDelimiter(Destino);
Dir := IncludeTrailingPathDelimiter(Destino);
I := FindFirst(SDir + *.*, faAnyFile-faDirectory, SR);
while I = 0 do
begin
nm_dir := fCopia.CriaDirEdicao(SR.Name);// Aqui dá o erro
if novo_dir = fCopia.CriaDirEdicao(SR.Name) then
inc(cont)
else
cont := 1;
novo_cont := fCopia.StrZero(cont,4);
str_token := fCopia.PegaPosicao(SR.Name,3);
nm_arq := StringReplace(SR.Name,str_token,novo_cont,[rfReplaceAll]);
ForceDirectories(Dir + IncludeTrailingPathDelimiter(fCopia.CriaDirEdicao(nm_arq)));
DDir := DDir + IncludeTrailingPathDelimiter(fCopia.CriaDirEdicao(nm_arq));
ForceDirectories(DDir + IncludeTrailingPathDelimiter(novo_cont));
DDir := DDir + IncludeTrailingPathDelimiter(novo_cont);
MoveFile(PChar(SDir+SR.Name),PChar(DDir+nm_arq));
DDir := IncludeTrailingPathDelimiter(Destino);
novo_dir := fCopia.CriaDirEdicao(nm_arq);
I := FindNext(SR);
end;
FindClose(SR);
I := FindFirst(SDir + *, faDirectory, SR);
while I =0 do
begin
if (SR.Attr = faDirectory) and (SR.Name <> .) and (SR.Name <> ..) then
DevolveArquivo(SDir + SR.Name, DDir);
I := FindNext(SR);
end;
end;
Pjava
Curtir tópico
+ 0
Responder
Posts
10/11/2011
Wilson Junior
De uma olhada neste link http://pt.wikipedia.org/wiki/Thumbs.db
Espero ter colaborado.
Espero ter colaborado.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)