Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Alihakemistojen etsiminen

Antti Laaksonen [29.04.2002 19:34:16]

#

Tässä mahdollisimman lyhyt listaus levyaseman tai tietyn hakemiston kaikkien alihakemistojen etsimiseen. Ohjelma toimii myös esimerkkinä rekursiivisen eli itseään kutsuvan aliohjelman teosta. Formilla tulee olla ListBox (List1), johon alihakemistot tulostuvat.

Lopuksi vielä varoituksen sana: suurilla levyasemilla kaikkien alihakemistojen etsiminen saattaa kestää todella kauan. Ja tarvittaessa ohjelman voi keskeyttää painamalla Control+Break.

'Huom! Suurilla levyasemilla ohjelman suoritus kestää k a u a n
Private Sub Form_Load()
    asema$ = "D:\" 'haettava levyasema/hakemisto
    List1.AddItem asema$
    HaeAliHakemistot asema$, 0
End Sub

Sub HaeAliHakemistot(hak$, kerros%)
    kerros% = kerros% + 1
    ReDim hakemistot(255) As String
    x$ = Dir(hak$, vbDirectory)
    Do While x$ <> ""
        If GetAttr(hak$ + x$) = vbDirectory And Left$(x$, 1) <> "." Then
            haki% = haki% + 1
            hakemistot(haki%) = x$
        End If
        x$ = Dir
    Loop
    For i = 1 To haki%
        List1.AddItem String$(kerros% * 3, "-") + hakemistot(i)
        HaeAliHakemistot hak$ + hakemistot(i) + "\", kerros%
    Next
    kerros% = kerros% - 1
    DoEvents 'haun voi keskeyttääkin
End Sub

(nimetön) [19.06.2002 01:14:09]

#

Ei listaa Hidden / System / Read Only hakemistoja

(nimetön) [28.09.2002 01:43:06]

#

jep

(nimetön) [28.09.2002 01:45:08]

#

ööö.. ohjelma valittaa jostain ihmeellisestä asiasta. Olisko mahdollista että pistäisit projektin linkin tohon tai jotain.

Fisher [16.03.2004 15:29:56]

#

Wau!!!! Kätevä

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta