Konu: Dosyaların Yolunu Cursore Atma
ÖNCELİKLE HERKEZE İYİ ÇALIŞMALAR;
HERHANGİ BİR SABİT DİSKTE BULUNAN (ÖR:*.JPEG) RESİMLERİN YOLLARINI CURSORE KAYDETMEK MÜMKÜN MÜ
Giriş yapmadınız. Lütfen giriş yapın yada kayıt olun.
ÖNCELİKLE HERKEZE İYİ ÇALIŞMALAR;
HERHANGİ BİR SABİT DİSKTE BULUNAN (ÖR:*.JPEG) RESİMLERİN YOLLARINI CURSORE KAYDETMEK MÜMKÜN MÜ
? GetTree('c:\','*.jpg',.T.)
locate
Brow
Function GetTree
Lparameters tcStartDir,tcSkeleton,tlSubfolders
Create Cursor filelist ;
(filepath m, filename c(50), ;
filesize i, fattr c(8), createtime T, lastacc T, lastwrite T)
oFiler = Createobject('filer.fileutil')
With oFiler
.SearchPath = tcStartDir
.Subfolder = tlSubfolders
.SortBy = 5
.SortDirection = 1
.FileExpression = tcSkeleton
.Find(0)
For ix=1 To .Files.Count
With .Files(ix)
If !(Bittest(.Attr,4) And .Name = '.')
Insert Into filelist ;
(filepath, filename, filesize, fattr, createtime, lastacc, lastwrite) ;
values ;
(.Path, .Name, .Size, Attr2Char(.Attr), ;
Num2Time(.Datetime), Num2Time(.LastAccessTime), Num2Time(.LastWriteTime))
Endif
Endwith
Endfor
Return .Files.Count
Endwith
Function Num2Time
Lparameters tnFloat
Return Dtot({^1899/12/30}+Int(m.tnFloat))+86400*(m.tnFloat-Int(m.tnFloat))
Function Attr2Char
Lparameters tnAttr
Return ;
IIF(Bittest(tnAttr,0),'RO','RW')+;
IIF(Bittest(tnAttr,1),'H','_')+;
IIF(Bittest(tnAttr,2),'S','_')+;
IIF(Bittest(tnAttr,4),'D','_')+;
IIF(Bittest(tnAttr,5),'A','_')+;
IIF(Bittest(tnAttr,6),'E','_')+;
IIF(Bittest(tnAttr,7),'N','_')
Explorerin kendisi (Shell.Application),FileSystemObject,adir() gibi yollar da var.