Rubrik: Dateisystem · Dateien - allgemein | VB-Versionen: VB.NET | 21.06.05 |
Datei in Benutzung? (VB.NET) Durch den Versuch eine Datei exklusiv zu öffnen, lässt sich sehr schnell feststellen, ob die Datei bereits anderweitig geöffnet ist. | ||
Autor: Dieter Otter | Bewertung: | Views: 29.996 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Unser heutiger Tipp zeigt einen Weg, um festzustellen, ob eine bestimmte Datei bereits von der eigenen oder von einer anderen Anwendung geöffnet ist. Hierzu versuchen wir einfach die besagte Datei exklusiv zu öffnen. Kommt es hierbei zu einem Zugriffsfehler ist die Datei i.a.R. bereits in Benutzung.
Public Function FileInUse(ByVal sFile As String) As Boolean ' Prüft, ob die angegeben Datei aktuell durch eine ' andere Anwendung in Benutzung ist Dim bInUse As Boolean = False If FileExists(sFile) Then Try ' Versuch, Datei EXKLUSIV zu öffnen Dim F As Short = FreeFile() FileOpen(F, sFile, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.LockReadWrite) FileClose(F) Catch ' Bei Fehler ist die Datei in Benutzung bInUse = True End Try End If ' Rückgabewert Return (bInUse) End Function
Public Function FileExists(ByVal sFile As String) As Boolean ' Prüft, ob die angegeben Datei existiert Return (System.IO.File.Exists(sFile)) End Function