Hi, I need count a subdirectorys but not the files that contain a directory. for ex:
c:\progfil\tiv\mus\
c:\progfil\tiv\mas\
c:\progfil\tiv\mes\
c:\progfil\tiv\cfg.ini
c:\progfil\tiv\read.txt

count of subdirs = 3

I use this script

Code:
 
Function dirlist($dirname, optional $options)
Dim $filename, $counter, $filepath, $mask
Dim $list, $sublist, $subcounter

$counter=-1

$dirname=Trim($dirname)
If $dirname=''
$dirname=@CURDIR
EndIf
If Right($dirname,1)='\'
$dirname=Left($dirname,Len($dirname)-1)
EndIf
If GetFileAttr($dirname) & 16
$mask='*.*'
Else
$mask=SubStr($dirname,InStrRev($dirname,'\')+1)
$dirname=Left($dirname,Len($dirname)-Len($mask)-1)
EndIf

ReDim $list[10]
$filename=Dir($dirname+'\'+$mask)
While $filename<>'' AND @ERROR=0
If $filename<>'.' AND $filename<>'..'
Select
Case (GetFileAttr($dirname+'\'+$filename) & 16)
If $options & 1
$counter=$counter+1
If $options & 2
$list[$counter]=$dirname+'\'+$filename+'\'
Else
$list[$counter]=$filename+'\'
EndIf
EndIf
If ($options & 4)
$sublist=dirlist($dirname+'\'+$filename+'\'+$mask,4)
If Ubound($sublist)+1
ReDim preserve $list[Ubound($list)+Ubound($sublist)+1]
For $subcounter=0 to Ubound($sublist)
$counter=$counter+1
If $options & 2
$list[$counter]=$dirname+'\'+$filename+'\'+$sublist[$subcounter]
Else
$list[$counter]=$filename+'\'+$sublist[$subcounter]
EndIf
Next
EndIf
EndIf
Case ($options & 2)
$counter=$counter+1
$list[$counter]=$dirname+'\'+$filename
Case 1
$counter=$counter+1
$list[$counter]=$filename
EndSelect
If $counter mod 10
ReDim preserve $list[$counter+10]
EndIf
EndIf
$filename = Dir('')
Loop

If $counter+1
ReDim preserve $list[$counter]
Else
$list=''
EndIf

If $mask<>'*.*' AND ($options & 4)
$filename=Dir($dirname+'\*.*')
While $filename<>'' AND @ERROR=0
If $filename<>'.' AND $filename<>'..'
If (GetFileAttr($dirname+'\'+$filename) & 16)
$sublist=dirlist($dirname+'\'+$filename+'\'+$mask,4)
If Ubound($sublist)+1
ReDim preserve $list[Ubound($list)+Ubound($sublist)+1]
For $subcounter=0 to Ubound($sublist)
$counter=$counter+1
If $options & 2
$list[$counter]=$dirname+'\'+$filename+'\'+$sublist[$subcounter]
Else
$list[$counter]=$filename+'\'+$sublist[$subcounter]
EndIf
Next
EndIf
EndIf
EndIf
$filename = Dir('')
Loop
EndIf

If $counter+1
ReDim preserve $list[$counter]
Else
$list=''
EndIf

$dirlist=$list
EndFunction

$dirarr=DIRLIST("c:\progfil\tiv",1)

$cantelem=Ubound($dirarr)
?$cantelem




this work fine, but count the files, I need that count only mus, mas med dirs and retorn a value 3.

tks for u help.


_________________________
Look always 4 the best...