vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Suche Visual-Basic Code
Re: Drive- and Filelisting 
Autor: Dirk
Datum: 22.01.02 21:12

Hi, furious,

Der folgende Code kann zwar Dein Problemchen nicht lösen, ist aber - so denke ich jedenfalls - exemplarisch für das Handling des File - Systems.

Und zwar brauchst Du ein Formular, auf dem sich eine RichTextBox und ein CommandButton befindet. Die RichTextBox sollte möglichst groß sein, denn der Folgende Code wird alle auf Deinem Rechner befindlichen Verzeichnisse dort reinschreiben. Eine normale TextBox tut's hier nicht, da die in der Länge des Textes eingeschränkt ist.

Mit dem CommandButton startest Du den Vorgang:



Private Sub Command1_Click()

Dim FileSystem As Object
Dim Drive As Object
Dim Root As Object

Set FileSystem = CreateObject("Scripting.FileSystemObject")

Command1.Enabled = False

Screen.MousePointer = vbArrowHourglass

RichTextBox1.Text = ""
RichTextBox1.Locked = True

For Each Drive In FileSystem.Drives
On Error Resume Next
Set Root = Drive.RootFolder
RichTextBox1.Text = RichTextBox1.Text & vbNewLine & Root.Path & vbNewLine
WalkThrough Root
Next

RichTextBox1.Locked = False

Screen.MousePointer = vbDefault

End Sub



Mithilfe der rekursiven Funktion WalkThrough durchschreiten wir per Tiefendurchlauf das FileSystem (Vorsicht! Je nach Anzahl der Verzeichnisse sehr lange Laufzeiten!)



Private Sub WalkThrough(Folder As Object)

Dim NewFolder As Object

For Each NewFolder In Folder.SubFolders
RichTextBox1.Text = RichTextBox1.Text & NewFolder.Path & vbNewLine
WalkThrough NewFolder
DoEvents
Next

End Sub


Der Code zeigt, wie gesagt, nur die Verzeichnisse an. Welche Dateien sich in den einzelnen Verzeichnissen befinden, kannst Du aber leicht selbst rausfinden, da jedes Folder-Objekt eine Files-Auflistung besitzt. Die könntest Du ebenfalls etwa mit

For Each File in Folder.Files
...
Next

durchlaufen.

Außerdem mußt Du ja nicht jedes Laufwerk durchsuchen (Das Floppy dürfte Dich zum Beispiel weniger interessieren). Hier gibt es noch zwei interessante Eigenschaften des Drive - Objektes:

1. DriveLetter - Eigenschaft
Sie wird mit Drive.DriveLetter gelesen und läßt schonmal erste Rückschlüsse auf die Art des Laufwerkes zu.

2. DriveType - Eigenschaft
Diese Eigenschaft ist die eigentlich interessante, wenn es darum geht, die Anzahl der zu durchquerenden Laufwerke einzuschränken.
Drive.DriveType gibt sechs verschiedene numerische Werte zurück:
0: Unknown
1: Removable
2: Fixed
3: Network
4: CD-Rom
5: Ram-Disk

... ich hoffe das hilft Dir weiter

Viel Spaß noch beim Tippeln!
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Drive- and Filelisting72furious21.01.02 15:34
Re: Drive- and Filelisting58Martoeng22.01.02 13:37
Re: Drive- and Filelisting66Dirk22.01.02 21:12

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel