Rubrik: Dateisystem · Dateien allgemein | VB-Versionen: VB6 | 11.08.08 |
Erweiterte Datei-Informationen ermitteln Dieser Tipp zeigt, wie sich die erweiterte Detail-Informationen einer Datei abrufen lassen. | ||
Autor: Dieter Otter | Bewertung: | Views: 17.007 |
www.tools4vb.de | System: Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Mir nachfolgendem Code lassen sich sämtliche erweiterte Datei-Informationen abrufen, so wie sie auch im Windows Explorer unter Datei - Eigenschaften - Register "Details" angezeigt werden.
' erweiterte Datei-Informationen einer ' Datei in einem ListBox-Control anzeigen Const MaxHeaders As Integer = 99 Dim sHeaders(0 To MaxHeaders) As String Dim oShell As Object Dim oFolder As Object Dim oItem As Object Dim i As Long Dim sValue As String Dim sFile As String Dim sPath As String ' Datei, deren Infos ermittelt werden sollen sFile = "d:\temp\db1.mdb" If InStr(sFile, "\") > 0 Then ' Verzeichnis, in dem sich die Datei befinden sPath = Left$(sFile, InStrRev(sFile, "\") - 1) sFile = Mid$(sFile, InStrRev(sFile, "\") + 1) End If ' Verweis auf Shell.Application erstellen Set oShell = CreateObject("Shell.Application") ' Verzeichnis angeben Set oFolder = oShell.Namespace((sPath)) If oFolder Is Nothing Then MsgBox "Für diesen Ordner sind keine Detail-Infos verfügbar!", _ vbExclamation + vbOKOnly Else With oFolder ' String-Array mit "abrufbaren" Datei-Informationen erstellen For i = 0 To MaxHeaders sHeaders(i) = .GetDetailsOf(.Items, i) Next i ' jetzt die Informationen für die gewünschte Datei abrufen Set oItem = .ParseName(sFile) If Not oItem Is Nothing Then For i = 0 To MaxHeaders sValue = .GetDetailsOf(oItem, i) If Len(sValue) > 0 Then List1.AddItem sHeaders(i) & ": " & sValue End If Next i End If End With Set oItem = Nothing End If Set oFolder = Nothing