* FINAL PUBLIC mypath STORE space(100) to mypath SET Date Dmy LOCAL ldFolder,lcBaseFolder LOCAL Array aFolders[1] lcBaseFolder = 'e:\GinBackup' FOR ix=1 To Adir(aFolders,Addbs(m.lcBaseFolder)+'*',"D") ldFolder = Ctod(Transform(aFolders[m.ix,1], '@R 99/99/9999')) IF !Empty(m.ldFolder) And m.ldFolder < Date()-7 ERASE (Addbs(m.lcBaseFolder)+Addbs(aFolders[m.ix,1])+'*.*') mypath=(Addbs(m.lcBaseFolder)+aFolders[m.ix,1]) DO d:\gin2006\progs\rdir *RD (Addbs(m.lcBaseFolder)+aFolders[m.ix,1]) ENDIF ENDFOR mypath = ADDBS(ALLTR("E:\GINBACKUP")) LOCAL lstfiles[1], dirnum,i dirnum = adir(lstfiles,mypath+"\*.*","D") FOR i = 3 to dirnum IF "D"$lstfiles(i,5) a=lstfiles(i,1) thisform.list1.additem(a) ENDIF NEXTand the codes in RD prg are as below
SET safety off *mypath=GETDIR() IF EMPTY(mypath) RETURN .T. ENDIF =getfolders(mypath) IF !DIRECTORY(mypath) RETURN .T. ELSE MESSAGEBOX("could not delete the directory: "+mypath) ENDIF FUNCTION getfolders PARAMETERS mypath LOCAL lstfiles[1], dirnum,i dirnum = adir(lstfiles,mypath+"\*.*","D") FOR i = 3 to dirnum IF "D"$lstfiles(i,5) getfolders(mypath+"\"+lstfiles(i,1)) ENDIF NEXT ON error do fileerror Delete file (mypath+"\*.*") RD (mypath) ON error RETURN(.t.) PROCEDURE fileerror myError = 1 RETURN