Dieser Tipp verrät, wie sich die Standard-Dateibeschreibung einer Datei ermitteln lässt, so wie sie auch vom Windows Explorer angezeigt wird (wie bspw. Adobe Acrobat Dokument, Microsoft Office Access-Anwendung usw.). Fügen Sie hierzu nachfolgenden Code in Ihr Projekt ein: Imports System.Runtime.InteropServices ' Benötigte API-Deklarationen Private Declare Auto Function SHGetFileInfo Lib "shell32.dll" ( _ ByVal pszPath As String, _ ByVal dwFileAttributes As Integer, _ ByRef psfi As SHFILEINFO, _ ByVal cbFileInfo As Integer, _ ByVal uFlags As Integer) As IntPtr Private Const SHGFI_TYPENAME = &H400 Private Const MAX_PATH = 260 <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Auto)> _ Private Structure SHFILEINFO Public hIcon As IntPtr Public iIcon As Integer Public dwAttributes As Integer <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=MAX_PATH)> _ Public szDisplayName As String <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=80)> _ Public szTypeName As String End Structure ''' <summary> ''' Ermittelt die Standard-Dateibeschreibung der übergebenen Datei ''' </summary> ''' <param name="Filename">Dateiname mit vollständiger Pfadangabe</param> ''' <returns>Standard-Dateibeschreibung wie im Windows Explorer angezeigt</returns> Public Function GetFileDescription(ByVal Filename As String) As String ' SHFileInfo-Struktur initialisieren Dim oInfo As New SHFILEINFO ' Aufruf der API-Funktion SHGetFileInfo(Filename, 0, oInfo, Marshal.SizeOf(oInfo), SHGFI_TYPENAME) ' Standard-Dateibeschreibung zurückgeben If Not IsNothing(oInfo.szTypeName) Then Return oInfo.szTypeName Else Return "" End If End Function Aufrufbeispiel: Label1.Text = GetFileDescription("d:\test.txt") Dieser Tipp wurde bereits 9.405 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. |
TOP! Unser Nr. 1 Neu! sevDataGrid 3.0 Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung Access-Tools Vol.1 Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
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. |