Möchten Sie wissen, welche logischen Laufwerke auf dem System existieren, so können Sie diese mit nachfolgender Routine ermitteln. Zusätzlich zu den Laufwerksbuchstaben wird noch der Typ des Laufwerks ermittelt (Festplatte, Diskette, Netzlaufwerk, ...). Hier der Quellcode: ' Zunächst die benötigten API-Deklarationen Declare Function GetDriveType Lib "kernel32" _ Alias "GetDriveTypeA" ( _ ByVal nDrive As String) As Long Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long,_ ByVal lpBuffer As String) As Long ' Konstanten: Laufwerks-Typen Const DRIVE_REMOVABLE = 2 Const DRIVE_FIXED = 3 Const DRIVE_REMOTE = 4 Const DRIVE_CDROM = 5 Const DRIVE_RAMDISK = 6 ' Die nachfolgende Routine ermittelt anhand des ' Laufwerkbuchstabens den Typ des Laufwerks im Klartext Public Function LaufwerksTyp(ByVal Drive As String) As String ' Der Parameter Drive gibt das Laufwerk an ' z.B. A:, C:, ... Dim lType As Long lType = GetDriveType(Drive) Select Case lType Case DRIVE_REMOVABLE LaufwerksTyp = "Wechseldatenträger" Case DRIVE_FIXED LaufwerksTyp = "Festplatte" Case DRIVE_REMOTE LaufwerksTyp = "Netzlaufwerk" Case DRIVE_CDROM LaufwerksTyp = "CD-ROM" Case DRIVE_RAMDISK LaufwerksTyp = "RAM-Disk" End Select End Function ' Die nachfolgende Routine ermittelt alle verfügbaren Laufwerke ' und die dazugehörigen Laufwerkstypen Private Sub GetAllDrives() Dim sBuffer As String * 255 Dim sDrives As String Dim lResult As Long Dim sDrive As String Dim sPos As Integer lResult = GetLogicalDriveStrings(Len(sBuffer), sBuffer) sDrives = Left$(sBuffer, lResult) While Len(sDrives) > 0 sPos = InStr(sDrives, Chr$(0)) sDrive = Left$(sDrives, sPos - 1) sDrives = Mid$(sDrives, sPos + 1) Debug.Print Left$(sDrive, 2);" [";LaufwerksTyp(sDrive);"]" Wend End Sub Dieser Tipp wurde bereits 30.914 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevEingabe 3.0 ![]() Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Tipp des Monats ![]() Matthias Kozlowski Umlaute konvertieren Ersetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) TOP Entwickler-Paket ![]() TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR... |
||||||||||||||||
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. |