vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Dateisystem · Laufwerke   |   VB-Versionen: VB5, VB606.01.04
Diskette eingelegt/schreibgeschützt?

Überprüft ob eine Diskette eingelegt und schreibgeschützt ist.

Autor:   Richard ReiffingerBewertung:  Views:  12.346 
www.richistudios.comSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Manchmal ist es nötig nicht nur zu wissen, ob eine Diskette eingelegt ist, sondern auch, ob diese schreibgeschützt ist. Dies lässt sich ganz einfach mit dem folgenden Code ermitteln:

' Prüft, ob eine Diskette in Laufwerk A: eingelegt ist
' (bRW prüft, ob die Diskette auch schreibgeschützt ist)
Public Function DiskExists(Optional ByVal bRW As Boolean = False) As Boolean
  Dim sOldDir As String
  Dim sDummyFile
  Dim F As Integer
  Dim bFileExists As Boolean
 
  ' Fehlerbehandlung aktivieren
  On Error Resume Next
 
  ' Setze Err-Objekt zurück
  Err.Clear
 
  If bRW Then
    ' Prüfe ob eine schreibbare Diskette im
    ' Laufwerk liegt
    sDummyFile = "A:\00000000.tmp"
 
    ' Prüfe ob die Datei bereits existiert
    bFileExists = (Dir$(sDummyFile) <> "")
 
    ' Versuch eine Datei zum "Anfügen" zu öffnen
    F = FreeFile
    Open sDummyFile For Append As #F
    Close #F
 
    ' Wenn kein Fehler auftrat, liegt eine Diskette
    ' ohne Schreibschutz im Laufwerk
    DiskExists = (Err = 0)
 
    ' Ggf. Datei wieder löschen
    If Not bFileExists Then Kill sDummyFile
 
  Else
    ' aktuelles Laufwerk merken
    sOldDir = CurDir
 
    ' Versuch ins Root-Verzeichnis von Laufwerk A:
    ' zu wechseln
    ChDir "A:\"
 
    ' Wenn kein Fehler auftrat, liegt eine Diskette
    ' im Laufwerk
    DiskExists = (Err = 0)
 
    ' wieder ins ursprüngliche Verzeichnis wechseln
    ChDir sOldDir
  End If
 
  ' Fehlerbehandlung wieder ausschalten
  On Error Goto 0
End Function

Mit Hilfe des Parameters bRW kann man angeben, ob nur nach einer Diskette gesucht wird (FALSE) oder ob geprüft werden soll, ob auf die Diskette geschrieben werden kann (TRUE).
 



Anzeige

Kauftipp Unser Dauerbrenner!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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.