Möchten Sie wissen, welche logischen Laufwerke auf dem System existieren? Option Explicit ' Laufwerks-Typen Public Enum eDriveType DRIVE_REMOVABLE = 2 DRIVE_FIXED = 3 DRIVE_REMOTE = 4 DRIVE_CDROM = 5 DRIVE_RAMDISK = 6 End Enum ' ermittelt alle logischen Laufwerke ' (eines bestimmten Typs) ' und gibt diese in einem String-Array zurück Public Function GetAllDrives( _ Optional ByVal nDriveType As eDriveType = 0) As Variant Dim oWMI As Object Dim oDrives As Object Dim oDrive As Object Dim sSQL As String Dim i As Integer sSQL = "SELECT * FROM Win32_LogicalDisk" If nDriveType <> 0 Then sSQL = sSQL & " WHERE DriveType = " & CStr(nDriveType) End If Set oWMI = GetObject("winmgmts:") Set oDrives = oWMI.ExecQuery(sSQL) If oDrives.Count > 0 Then ReDim sDrives(oDrives.Count - 1) i = 0 For Each oDrive In oDrives sDrives(i) = oDrive.DeviceID i = i + 1 Next End If Set oDrives = Nothing Set oWMI = Nothing GetAllDrives = sDrives End Function ' Laufwerkstyp bestimmen Public Function GetDriveType(ByVal sDrive As String) As eDriveType Dim oWMI As Object Dim oDrives As Object Dim sSQL As String Dim oDrive As Object sSQL = "SELECT * FROM Win32_LogicalDisk WHERE DeviceID = '" & sDrive & "'" Set oWMI = GetObject("winmgmts:") Set oDrives = oWMI.ExecQuery(sSQL) If Not oDrives Is Nothing Then If oDrives.Count > 0 Then For Each oDrive In oDrives GetDriveType = oDrive.DriveType Exit For Next End If End If Set oDrives = Nothing Set oWMI = Nothing End Function Beispiel: Erstellen Sie ein neues Projekt und kopieren obigen Code in ein Modul. Ziehen Sie auf die Form1 ein ListBox-Control und fügen nachfolgenden Code in das Form-Codefenster ein: Option Explicit Private Sub Form_Load() ' alle logischen Laufwerke ermitteln Dim vDrives As Variant Dim i As Integer vDrives = GetAllDrives() If IsArray(vDrives) Then For i = 0 To UBound(vDrives) List1.AddItem vDrives(i) Next i End If End Sub Private Sub List1_DblClick() ' Laufwerkstyp ermitteln If List1.ListIndex >= 0 Then MsgBox GetDriveType(List1.Text) End If End Sub Dieser Tipp wurde bereits 16.961 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (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. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 sevGraph (VB/VBA) Grafische Auswertungen Präsentieren Sie Ihre Daten mit wenig Aufwand in grafischer Form. sevGraph unterstützt hierbei Balken-, Linien- und Stapel-Diagramme (Stacked Bars), sowie 2D- und 3D-Tortendiagramme und arbeitet vollständig datenbankunabhängig! |
||||||||||||||||
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. |