Liste erstellen

Janos

Cadet
Mitglied seit
11.11.2001
Beiträge
48
Renomée
0
Hi,
ich suche ein Programm das mir eine Liste der Ordner auf einem Datenträger erstellt, Unterverzeichnisse sollten dem Ordner in dem sie sich befinden zugeordnet sein.

MfG
janos
 
hi...

hab hier ein kleines script, das einen html file im root verzeichnis erstellt...
im augenblick listet es aber nur mp3 files, kann aber angepasst werden. auch der ausgabepfad.
einfach den text zwischen der doppellinie in einen textfile kopieren und mit der endung *.vbs versehen.

alternativ kannst du aber auch die neueste version des windows commanders nehmen, der kann das auch, allerdings kann man aus seiner liste die daten nicht mit cut&paste weiterverarbeiten


===========================================================


'==========================================================================
'
' VBScript Source File
'
' NAME: READALL.VBS
'
' AUTHOR: Thorsten Eggeling
' DATE  : 01.2001
'
' COMMENT: pcwFman Liest alle Datei- und Ordnernamen in eine HTML-Datei
'
' nötige Anpassungen: myFile, evtl. Fortschrittsanzeige auskommentieren
'                     FileExt, WithNumbers
'==========================================================================


ordner=inputbox("Pfad angeben", "Dateiliste", "K:")

If ordner="" Then  WScript.Quit

Dim Drives
Dim Files
Dim Root
Dim ie4Progess
Dim myDrive
Dim myPath
Dim aString(0)
Dim FileCounter
Dim FileExt
Dim WithNumbers
Dim myFile
Dim strTemp(0)
'**************************
'Hier anpassen
FileExt="mp3"
WithNumbers=False
myFile="c:DateiListe.html"

Set WshShell = WScript.CreateObject("WScript.Shell")
Set myFMan = CreateObject("pcwFMan.pcwFMan")
Set ie4Progess=CreateObject("InternetExplorer.Application")
'Pfad zerlegen

If InStr(ordner,":")=0 Then
MsgBox("Bitte geben Sie den vollständigen Pfad ein.")
WScript.Quit
End If

myDrive=Left(ordner,1)
myPath=Mid(ordner,4, Len(ordner))

'Fortschritts-Anzeige initialisieren

FortschrittsAnzeige ()

Set Drives = myFman.Drives

For i=0 to Drives.Count-1
If Drives(i).Letter =UCase(MyDrive) Then Exit For
Next
DriveNumber=i


Result=myFMan.OpenBinaryFile(myFile,1,1)


aString(0)="<B>"& Drives(DriveNumber).Letter & ":" & myPath & "</B>
"
Result=myFMan.Write(aString)

'Jetzt geht's los
Recurse DriveNumber, myPath
myFMan.Close
ie4Progess.Quit
set ie4Progess=nothing
Set myFMan=nothing

'Liste anzeigen
WshShell.Run ("iexplore.exe " & myFile)
Wscript.Quit

Function Recurse (DriveNumber, TheFolder)
Set Root=Drives(DriveNumber).Folder(TheFolder)
Set Files=Root.Files
ShowFiles(Files)
'Odner auflisten
'MsgBox(Files.Count)
For Each File In Files
 If File.IsFolder Then
     aString(0)="<B>" & Drives(DriveNumber).Letter & ":" & TheFolder & "" & File.Name & "</B>
"
     'Result=myFMan.Write(aString)
     strTemp(0)=aString(0)
     i=i+1
     UpdateFortschritt(i)
     Recurse DriveNumber, TheFolder & "" & File.Name
  End If
Next
End Function

'Dateien Auflisten
Sub ShowFiles (ByVal AFolder)
For Each File In Files

 If Not File.IsFolder Then
    If Right(LCase(File.Name), 3)= LCase(FileExt) Or FileExt="*" Then
     FileCounter=FileCounter+1
     If WithNumbers Then
       aString(0)="<B>" & FileCounter &"</B><I> "& File.Name & "</I>
"
     Else
       aString(0)="<I> "& File.Name & "</I>
"
     End If  
    If Not Flag Then Result=myFMan.Write(strTemp)
    Flag = True
    Result=myFMan.Write(aString)
    End If
 End If
Next

End Sub

Sub FortschrittsAnzeige ()

ie4Progess.navigate ("about:blank")

Do while ie4Progess.ReadyState<>4
Loop

ie4Progess.width=200
ie4Progess.height=80
ie4Progess.Addressbar=vbfalse
ie4Progess.MenuBar=vbfalse
ie4Progess.ToolBar=vbfalse
ie4Progess.StatusBar=vbfalse
ie4Progess.visible=1
End Sub

Sub UpdateFortschritt(Zahl)
ie4Progess.document.body.innerHTML="<Center>Ordner suchen: " & Zahl & " </Center>"
End Sub



===========================================================

cu
scan

ps: zu dem script gehört noch eine dll, wen es interessiert, melde sich, dann verschick ich es
 
Zurück
Oben Unten