![]() |
|
44 פיט - יפלד | |
![]() |
|
ישאר דומע | םיפיטה דומע | רנק ודיע תאמ |
![]() |
ךיא עדוי אל ינא לבא ,תונולח לש "םיצבק וא תויקית שופיח"-ה ומכ תינכות תונבל הצור ינא ?הזכ רבד השוע ינא ךיא .חישקה קסידה לכב םיצבק שפחל יפלדבו FindNext-ו FindFirst תוארקנש תורדהנ תויצקנופ 2 םנשי ,סודל לקספ וברוט ימי זאמ .FindClose םשב תפסונ היצקנופ הל הפסונ ןוויכמו הדובעה תא תושועש ...וכו FindFirstFile תומשב API תויצקנופ שי ,סוד לש לקספל דוגינב .FindClose י"ע םתוא ררחשל םג ךירצ זא ,םיעיבצמב םג רבודמ וישכעש .הריזחמ איה המו תלבקמ היצקנופ לכ קוידב המ ריבסנ לכ םדוק ואוב .TSearchRec םשב המושרל הנתשמ רידגהל ךירצש תעדל ךירצ לכ םדוק :םיאבה תודשה תא הליכמ המושרה .ץבוקה לש יחכונה ןמזה - Time .םיתבב ץבוקה לדוג - Size .(האבה הלבטב םהילע רבסה) ץבוקה ינייפאמ - Attr .ץבוקה םש - Name .רבסה ןיא - ExcludeAttr .ץבוקה לש Handle-ה - FindHandle .הב תושמתשמ ל"נה תויצקנופהש תונולח לש המושר - FindData :םיצבק ינייפאמ .וילע בותכל רשפא יא ,דבלב האירקל ץבוק - faReadOnly .רתסומ ץבוק - faHidden .תכרעמ ץבוק - faSysFile .קסידה לש ירודיסה רפסמה - faVolumeID .הירפס - faDirectory .ץבוק לכ לש ןייפאמ - faArchive .ץבוק ןייפאמ פ"ע אל להנתמ שופיח - faAnyFile הסינכמ איה םתוא תאצומ איה רשאכו םימיוסמ םיצבק יגוס תשפחמה היצקנופ בותכנ וישכע .TStringList ךותל םתוא function FindFiles(FileMask:string; //The mask of the file (*.* for example) Path:string; // The path to start searching from ... FindInSubDir:boolean; // To search in sub dir 2 ? var FileList: TstringList // The list to put the file in... ) : boolean; //True if any file was found procedure FindSubFiles(SubDir : string); var FileSeek : TSearchRec; I : integer; begin I:=findfirst(SubDir+FileMask, faAnyfile, FileSeek); while I=0 do begin if (FileSeek.attr and (faVolumeID+faDirectory))=0 then FileList.add ( SubDir +FileSeek.Name); I:=FindNext(FileSeek); end; //while if FindInSubDir then begin while (I=0)and(FileSeek.name[1]='.') do I:=findNext(FileSeek); while I=0 do begin if ((FileSeek.attr and faDirectory)=faDirectory) then FindSubFile (Concat(SubPath,fileseek.name, '\'); //Recurse I:=FindNext ( fileseek ); end; //While end; //If FindClose(FileSeek); end; begin result:=true; FindSubFiles(Path); if FileList.count=0 then result:=false; end; |