Delphi-Quellcode:
{Findet alle Dateien im SourcePfad und kopiert auf Networkpfad}
procedure findfiles(Source: string);
var SearchRec: TSearchRec;
begin
screen.cursor:=crhourglass;
if Source <> '' then
begin
if FindFirst(Source + '\*.*',faDirectory+fahidden+fasysfile+faanyfile+faarchive+fareadonly, SearchRec)=0 then
begin
repeat
application.ProcessMessages;
if ((SearchRec.Attr = faDirectory and 255) or (SearchRec.Attr = 48)
or (SearchRec.Attr = 18) or (searchrec.attr=17) or (searchrec.attr=20))
and (pchar(SearchRec.Name) <> '.') and (pchar(SearchRec.Name) <> '..') then
begin
findfiles(Source + '\' + SearchRec.Name);
end else
begin
CopyFilewithprogressbar(PChar(Source+'\'+SearchRec.Name), PChar(networkpfad+ '\' + SearchRec.Name));
end;
application.ProcessMessages;
until (FindNext(SearchRec) <> 0);
FindClose(SearchRec);
end;
end;
screen.cursor:=crdefault;
end;
Habe diese Prozedur schon in mehreren Programmen verwendet. Bisher ohne Probleme. Nun jedoch in meinem neusten Programm wird sie plötzlich nicht mehr akzeptiert. Die Fehlermeldung lautet: 323 Incompatible Types. Die Markierung bleibt auf :
if FindFirst(Source + '\*.*',faDirectory+fahidden+fasysfile+faanyfile+fa archive+fareadonly, SearchRec)=0
stehen. Irgendwie hat er plötzlich ein Problem mit "fareadonly" oder irgendwas da in der Nähe.
Was kann das sein? Ich habe keine blassen Schimmer was ihm nicht passt....
Ich verwenden Delphi 7 Enterprise.