Page 1 of 1

Cancellazione Directory e subDirectory

Posted: Wed Jul 16, 2008 8:08 am
by xfood
Ciao a Tutti,
volevo chiedere come posso cancellare
tutto il contenuto di una directory (cartella)
dove all'interno sono contenuti file e anche altre sotto cartelle

chiaramente sempre con FWPPC

Grazie mille a tutti

Re: Cancellazione Directory e subDirectory

Posted: Wed Jul 16, 2008 11:23 am
by Enrico Maria Giordano
Usa la funzione Directory() per trovare e cancellare tutti i file della directory indicata. La funzione dovrà essere ricorsiva se all'interno della directory vi sono delle subdirectory. Un esempio non funzionante tanto per avere un'idea di come procedere:

Code: Select all

FUNCTION DELETEDIR( cDir )

    LOCAL aDir, cName

    LOCAL i

    aDir = DIRECTORY( cDir + "\*.*", "HRD" )

    FOR i = 1 TO LEN( aDir )
        cName = aDir[ i, F_NAME ]

        IF cName == "."; LOOP; ENDIF
        IF cName == ".."; LOOP; ENDIF

        cName = cDir + "\" + cName

        IF "D" $ aDir[ i, F_ATTR ]
            IF !DELETEDIR( cName )
                RETURN .F.
            ENDIF
        ELSE
            IF FERASE( cName ) = -1
                POPMSG( "Impossibile cancellare il file " + cName + ".", 1 )
                RETURN .F.
            ENDIF
        ENDIF
    NEXT

    IF !REMOVEDIR( cDir )
        POPMSG( "Impossibile cancellare la cartella " + cDir + ".", 1 )
        RETURN .F.
    ENDIF

    RETURN .T.
EMG