*Example directory structure delete
*Created a directory c:\tracy for testing purposes
*C:\tracy has 2 subfolders and each subfolder has
*2 files for testing purposes
SET SAFETY OFF
IF FILE('dirlist.dbf')
DELETE FILE ('dirlist.dbf')
ENDIF
* Pass the name of the directory you wish to delete
*all of its files and subdirectories
DO getdirs WITH "C:\tracy"
IF USED('dirlist')
SELE dirlist
GO TOP
SCAN
IF ADIR(gaFiles, dirlist.dirname+'*.*')>0
FOR i = 1 TO ALEN(gaFiles,1)
IF FILE(dirlist.dirname+gaFiles(i,1))
DELE FILE (dirlist.dirname+gaFiles(i,1))
ENDIF
ENDFOR
ENDIF
ENDSCAN
FOR i = RECCOUNT() TO 1 STEP -1
GOTO i
IF DIRECTORY(dirlist.dirname)
lcommand="RMDIR "+dirlist.dirname
&lcommand
ENDIF
ENDFOR
ENDIF
IF USED('dirlist')
USE IN dirlist
ENDIF
RETURN
PROCEDURE getdirs
LPARAMETERS tcPath
IF UPPER(TYPE('tcpath'))="L"
tcPath="c:\"
ENDIF
CREATE CURSOR dirlist (dirname m)
GetSubDirs(tcPath)
RETURN
FUNCTION GetSubDirs
LPARAMETERS tcPath
LOCAL lcCurDir, lnSubDirs, ix
LOCAL ARRAY laDirs[1]
lcCurDir = ADDBS(tcPath)
INSERT INTO dirlist VALUES (lcCurDir)
lnSubDirs=ADIR(laDirs,lcCurDir+"*.*","D"
FOR ix = 1 TO lnSubDirs
IF laDirs[ix,1]#"." AND "D"$laDirs[ix,5]
=GetSubDirs(lcCurDir+laDirs[ix,1])
ENDIF
ENDFOR
RETURN
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.